System and method for implementing and accessing call forwarding services

ABSTRACT

A web server implements a call service, including call service data corresponding to a directory number of a user. The web server includes a first interface for communicating with a call processor that processes telephone calls in a telecommunications network. The processor communicates with a database that includes the call service data. The web server further includes a second interface for communicating with the user&#39;s computer via a packet switching network, the user computer including a display for displaying activation fields, which include a first activation indicator corresponding to the call service and a second activation indicator corresponding to a first feature of the call service. Each of the activation indicators enables selection of one of an ON and an OFF condition.

The present application is a continuation application of U.S. patentapplication Ser. No. 11/436,516, filed on May 19, 2006, now U.S. Pat.No. 7,227,940, issued on Jun. 5, 2007, which is a continuation of U.S.patent application Ser. No. 11/049,350, filed on Feb. 3, 2005, now U.S.Pat. No. 7,076,045, issued on Jul. 11, 2006, which is a continuation ofU.S. patent application Ser. No. 10/164,065, filed on Jun. 7, 2002, nowU.S. Pat. No. 6,954,524, issued on Oct. 11, 2005, the disclosures ofwhich are expressly incorporated herein by reference in theirentireties.

CROSS REFERENCE TO RELATED APPLICATIONS

This application is related to U.S. patent application Ser. No.09/716,276, filed Nov. 21, 2000, entitled “System and Method forImplementing and Accessing Call Forwarding Services” in the names of T.Adams et al., which is a continuation-in-part of U.S. patent applicationSer. No. 09/619,312, filed Jul. 19, 2000, entitled “System and Methodfor Providing Remote Access to Telecommunications Services” in the namesof A. BHANDARI et al., the disclosures of which are expresslyincorporated by reference herein in their entireties. This applicationis further related to U.S. patent application Ser. No. 10/134,637, filedApr. 30, 2002, entitled “Voice Enhancing for Advance Intelligent NetworkServices,” in the names of S. Crockett et al., which application is acontinuation-in-part of U.S. patent application Ser. No. 09/716,276,filed Nov. 21, 2000, entitled “System and Method for Implementing andAccessing Call Forwarding Services” in the names of T. Adams et al.,referenced above, and a continuation-in-part of U.S. patent applicationSer. No. 09/983,303, filed Oct. 24, 2001, entitled “System and Methodfor Restricting and Monitoring Telephone Calls” in the names of N. Booket al., which is related to U.S. patent application Ser. No. 09/716,276,filed Nov. 21, 2000, entitled “System and Method for Implementing andAccessing Call Forwarding Services” in the names of T. Adams et al.,referenced above, the disclosures of which are expressly incorporated byreference herein in their entireties.

BACKGROUND OF THE INVENTION

1. Field of the Invention

The present invention relates to the field of telecommunications. Moreparticularly, the present invention relates to call forwarding servicesthat enable subscribers to forward calls to alternative locations.

2. Acronyms

The written description provided herein contains acronyms which refer tovarious telecommunications services, components and techniques, as wellas features relating to the present invention. Although some of theseacronyms are known, use of these acronyms is not strictly standardizedin the art. For purposes of the written description herein, the acronymsare defined as follows:

Advanced Intelligent Network (AIN)

Anonymous Call Rejection (ACR)

Authentication/Subscription Information (ASI)

Call Processing Record (CPR)

Caller Identification (Caller ID)

Central Office (CO)

Customer Premises Equipment (CPE)

Dual Tone Multi-Frequency (DTMF)

Graphical User Interface (GUI)

Generic Data Interface (GDI)

HyperText Mark-Up Language (HTML)

HyperText Transfer Language Protocol (HTTP)

Incoming Call Manager (ICM)

Interactive Voice Response (IVR)

Internet Caller Identification (ICID)

Internet Call Waiting (ICW)

Lightweight Directory Access Protocol (LDAP)

Line Information Database (LIDB)

Outgoing Call Control (OCC)

Personal Computer (PC)

Personal Call Manager/Personal Communications Manager (PCM)

Personal Digital Assistant (PDA)

Personal Identification Number (PIN)

Public Switched Telephone Network (PSTN)

Registration Server (RS)

Service Control Point (SCP)

Service Management System (SMS)

Service Node/Intelligent Peripheral (SN/IP)

Service Switching Point (SSP)

Signaling System 7 (SS7)

Signaling Transfer Point (STP)

Terminating Attempt Trigger (TAT)

Time of Day/Day of Week (TOD/DOW)

Transaction Capabilities Application Part (TCAP)

Transmission Control Protocol/Internet Protocol (TCP/IP)

Uniform Resource Locator (URL)

World Wide Web (WWW)

3. Background Information

Currently, subscribers to call control services within the publicswitched telephone network (PSTN) are able to initiate and modify theirservices by calling a customer service representative or by interactingwith an interactive voice response (IVR) system using a standard dualtone multi-frequency (DTMF) telephone device. These methods practicallylimit the number and types of services that can be provided to andmodified by the subscribers because all information pertaining to theservices is presented audibly. In addition, the potential market forsubscribers to call control services is not fully exploited because ofcustomer reluctance to use IVR systems.

There have been attempts to remedy the problems associated with IVRaccess to PSTN services. These attempts incorporate use of packetswitched data networks, such as the Internet, to avoid conventional IVRsystems and to streamline the initiation and modification functions.Generally, the PSTN services and related parameters are displayed to thesubscriber on a graphical user interface (GUI), which interfaces withthe PSTN intelligence through a web server, for example, in the packetswitched data network. The current Internet based systems have severaldrawbacks, however, including the inability to ensure near real-timeupdate of services and incompatibility with existing IVRimplementations. Furthermore, often the presentation of the availablePSTN services on the GUI is cluttered and confusing, preventing thesubscriber from effortlessly creating, implementing and editing thedesired service. The subscriber may spend an inordinate amount of timeattempting to understand the display and decipher instructions forroutinely interfacing with the service. As a result, the subscriber mayresort to trial and error implementation of the service, or becomealtogether discouraged and revert to use of the conventional IVR or livecustomer service interaction.

For many call control services, subscribers must submit requests to thecustomer service arm of their provider to initiate new services orupdate existing ones. The requests are implemented according to theprovider's time line and discretion. It is difficult for the users togauge when the service alteration will take effect. Also, because thecurrent Internet based systems operate exclusively from the conventionalIVR systems, i.e., the two systems cannot coexist, customers must selecteither the Internet interface or the IVR interface. Consequently, acustomer who has selected the Internet interface, and who is without aPC and/or Internet access, is not able to make desired changes to his orher services through an IVR. The inability to implement desired changesis especially troublesome considering that users are often interested inaltering some call services (e.g., call forwarding, paging, and callerID) when they are away from their home or business telephone and PC.

An example of call control services provided over a packet switched datanetwork is described in CHANG et al., U.S. Pat. No. 5,958,016, whichteaches enabling advanced intelligence network (AIN) services over theWorld Wide Web (WWW or “the web”) through a provisioning system calledthe service management system (SMS). A conventional approach toimplementing a call management system, including a call forwardingservice, is presented in WOOD et al., U.S. Pat. No. 6,091,808, whichdescribes a telephone call management network that can be remotelyaccessed by customers using web browsers over the Internet. One of thecall services managed by the system disclosed in WOOD et al. is callforwarding. In WOOD et al. the customer is able to activate anddeactivate call forwarding via a web facility. However, there is noprovision for accomplishing the same objective alternatively via a PSTN,only using a DTMF telephone.

Another disadvantage of conventional Internet accessible call forwardingsystems is incompatibility with IVR access to the same call forwardingaccount. In other words, if the subscriber elects to have Internetaccessible call forwarding, then the service cannot be routinely changedthrough existing IVR systems. Therefore, subscribers are not able toupdate the service unless they have immediate access to a PC and modem(or device capable of implementing Internet connections). In order tohave both IVR and Internet access to control call forwarding,subscribers would have to open separate accounts, which is inconvenientand potentially difficult for the provider to reconcile, especiallywhere the multiple accounts may send conflicting information regardingcalls to be forwarded with respect to the same telephone number.

The present invention overcomes the problems associated with the priorart, as described below.

BRIEF DESCRIPTION OF THE DRAWINGS

The present invention is further described in the detailed descriptionthat follows by reference to the noted drawings by way of non-limitingexamples of embodiments of the present invention, in which likereference numerals represent similar parts throughout several views ofthe drawings, and in which:

FIG. 1 is a block diagram showing an exemplary telecommunicationsnetwork for Flexible Call Forwarding and Intelligent Call Forwarding,according to an aspect of the present invention;

FIG. 2 is an exemplary call flow diagram in which the subscriberaccesses the Flexible Call Forwarding data via the Internet, accordingto an aspect of the present invention;

FIG. 3 is an exemplary web page to be displayed at the user's PC showinga weekly schedule, according to an aspect of the present invention;

FIG. 4 is an exemplary web page to be displayed at the user's PC showinga change to the weekly schedule, according to an aspect of the presentinvention;

FIG. 5 is an exemplary web page to be displayed at the user's PC showingan updated weekly schedule, according to an aspect of the presentinvention;

FIG. 6 is an exemplary web page to be displayed at the user's PC showinga priority screening list, according to an aspect of the presentinvention;

FIG. 7 is an exemplary web page to be displayed at the user's PC showingactivation and scheduling data for Flexible Call Forwarding, accordingto an aspect of the present invention;

FIG. 8 is an exemplary web page to be displayed at the user's PC showingan activation and scheduling summary for Flexible Call Forwarding,according to an aspect of the present invention;

FIG. 9 is an exemplary web page of an alternative embodiment to bedisplayed at the user's PC showing a log on screen enablingauthentication, according to an aspect of the present invention;

FIG. 10 is an exemplary web page of the alternative embodiment to bedisplayed at the user's PC showing the status of the Flexible CallForwarding service, according to an aspect of the present invention;

FIG. 11 is an exemplary web page of the alternative embodiment to bedisplayed at the user's PC showing a priority screening list, accordingto an aspect of the present invention;

FIG. 12 is an exemplary web page of the alternative embodiment to bedisplayed at the user's PC showing a weekly schedule, according to anaspect of the present invention;

FIG. 13 is an exemplary web page of the alternative embodiment to bedisplayed at the user's PC enabling a change to the subscriber's PIN,according to an aspect of the present invention;

FIG. 14 is an exemplary web page of another alternative embodiment to bedisplayed at the user's PC showing an activation and scheduling summaryfor Flexible Call Forwarding, according to an aspect of the presentinvention;

FIG. 15 is an exemplary call flow diagram in which the subscriberaccesses Flexible Call Forwarding data via an IVR, according to anaspect of the present invention;

FIG. 16 is an exemplary Flexible Call Forwarding call flow diagramshowing routing of an incoming telephone call, according to an aspect ofthe present invention;

FIG. 17 is an exemplary flow chart of Flexible Call Forwarding callrouting logic, according to an aspect of the present invention;

FIG. 18 is a block diagram showing an exemplary PCM telecommunicationsnetwork, according to an aspect of the present invention;

FIG. 19 is a call flow diagram illustrating subscriber requests forinformation from the PCM system, according to an aspect of the presentinvention;

FIG. 20 is a call flow diagram illustrating subscriber requests forinformation from the PCM system, according to an alternative embodimentof the present invention;

FIG. 21 illustrates user action in an exemplary web-based PCM system,according to an aspect of the present invention;

FIG. 22 illustrates an exemplary window navigation flow for basic useractions, according to an aspect of the present invention;

FIG. 23 is an exemplary window to be displayed at the user's PCrequesting identification of a PCM account number, according to anaspect of the present invention;

FIG. 24 is an exemplary PCM home page window to be displayed at theuser's PC identifying customized user options for a selected accountnumber, according to an aspect of the present invention;

FIG. 25 is a block diagram showing an exemplary Intelligent CallForwarding and ICID telecommunications network, according to an aspectof the present invention;

FIG. 26 is an exemplary call flow diagram in which the subscriberaccesses the Intelligent Call Forwarding data via the Internet,according to an aspect of the present invention;

FIG. 27 is an exemplary web page to be displayed at the user's PCshowing a rejection screening list for Intelligent Call Forwarding,according to an aspect of the present invention;

FIG. 28 is an exemplary call flow diagram in which the subscriberaccesses Intelligent Call Forwarding data via an IVR, according to anaspect of the present invention;

FIG. 29 is an exemplary call flow diagram in which Intelligent CallForwarding and ICID have been deactivated, or when no active Internetsession exists, according to an aspect of the present invention;

FIG. 30 is an exemplary call flow diagram in which the subscriber electsto accept the incoming telephone call, according to an aspect of thepresent invention;

FIG. 31 is an exemplary call flow diagram in which the subscriber electsto forward the incoming telephone call to voice mail, according to anaspect of the present invention;

FIG. 32 is an exemplary call flow diagram in which the subscriber electsto play an announcement to the caller, according to an aspect of thepresent invention;

FIG. 33 is an exemplary call flow diagram in which the subscriber electsto redirect the incoming telephone call to an alternate telephonenumber, according to an aspect of the present invention;

FIG. 34 is an exemplary call flow diagram in which the calling partyabandons the telephone call to the subscriber after a response from theweb server, according to an aspect of the present invention;

FIG. 35 is an exemplary call flow diagram in which the calling partyabandons the telephone call to the subscriber before a response from theweb server, according to an aspect of the present invention;

FIG. 36 is an exemplary call flow diagram of an alternative embodimentof the invention, in which the subscriber elects to accept the incomingtelephone call, according to an aspect of the present invention;

FIG. 37 is a flowchart of exemplary SCP service logic for IntelligentCall Forwarding and ICID, according to an aspect of the presentinvention;

FIG. 38 is a continuation of the exemplary flowchart diagram of FIG. 38;and

FIG. 39 is a continuation of the exemplary flowchart of FIG. 38.

DETAILED DESCRIPTION OF EMBODIMENTS

The present invention relates to call forwarding services that resolvethe previously identified problems, simply and efficiently. The callforwarding services include Flexible Call Forwarding and IntelligentCall Forwarding, which can be implemented individually or through aPersonal Call Manager (PCM) system, along with other telecommunicationservices, such as personal directories, Internet Caller Identification(ICID), Incoming Call Manager (ICM) and Outgoing Call Control (OCC). Thepresent invention is an AIN based system and method that allows asubscriber connected to a communications network, including the Internetand other packet switched type data networks, as well as throughconventional IVR systems, to customize and execute the call forwardingservices, with near real-time access to the service data.

In view of the above, the present invention through one or more of itsvarious aspects and/or embodiments is presented to accomplish one ormore objectives and advantages, such as those noted below.

An aspect of the present invention provides a method for enabling aninterface with a subscriber's call forwarding service, which includescall forwarding service data corresponding to a telephone number of thesubscriber and at least one of a screening list indicating at least onetelephone number and a schedule indicating at least one activationperiod. The method includes transmitting display data from a callforwarding service server to display a first screen on a graphical userinterface (GUI). The first screen includes a forward-to number field andat least one activation field. The activation fields include a firstactivation indication corresponding to the call forwarding service, asecond activation indication corresponding to the screening list and athird activation indication corresponding to the schedule.

The first screen may further include a list creation field correspondingto the screening list. Additional display data may be transmitted fromthe server to display a second screen on the GUI in response toselecting the list creation field. The second screen includes ascreening table having a name column and a priority telephone numbercolumn. The first screen may further include a schedule creation fieldcorresponding to the schedule. Additional display data may betransmitted from the server to display a third screen on the GUI inresponse to selecting the schedule field. The third screen includes aschedule table having columns corresponding to days in a week, each ofthe columns including at least one start field and a corresponding stopfield.

Another aspect of the present invention provides a method forinterfacing with a call forwarding service that forwards calls placed toa subscriber's telephone number to a forward-to number and that includescall forwarding service data, having at least one of a screening list,indicating at least one telephone number, and a schedule, indicating atleast one activation period. The method includes transmitting displaydata from a call forwarding service server to display a first screen onthe subscriber's GUI. The first screen includes a forward-to numberfield and at least one activation field. The activation fields include afirst activation indicator corresponding to the call forwarding service,a second activation indicator corresponding to the screening list and athird activation indicator corresponding to the schedule. Data isreceived indicating the forward-to number entered in the forward-tonumber field. Selection data, entered by the subscriber in response tothe first screen, is received. The selection data indicates an ONcondition or an OFF condition corresponding to each activation field.The call forwarding service is activated in response to an ON conditioncorresponding to the first activation indicator, and call forwardingfunctionality is implemented, subject to the screening list and theschedule, to forward calls to the forward-to number.

The screening list is activated in response to an ON conditioncorresponding to the second activation indicator, forwarding only callsfrom the at least one number are forwarded to the forward-to number whenthe call forwarding functionality is active. The weekly schedule isactivated in response to an ON condition corresponding to the thirdactivation indicator, enabling the call forwarding functionality onlyduring the at least one activation period.

The first screen may further include a list creation field correspondingto the screening list. Additional display data is transmitted from theserver to display a second screen on the GUI in response to selection ofthe list creation field. The second screen includes a screening tablehaving a name column and a priority telephone number column. Additionalselection data is received, indicating at least one name, entered in thename column, and a corresponding priority telephone number, entered inthe priority telephone number column. Only calls from the at least onepriority telephone number are forwarded to the forward-to number whenthe call forwarding functionality is active and when the screening listis activated in response to the ON condition corresponding to the secondactivation indicator.

The first screen may further include a schedule creation fieldcorresponding to the schedule. Additional display data is transmittedfrom the server to display a third screen on the GUI in response toselection of the schedule field. The third screen includes a scheduletable having multiple columns corresponding to days in a week. Each ofthe columns includes at least one start field and a corresponding stopfield. Schedule data is received, indicating the at least one activationperiod, having at least one start time and a corresponding stop timeduring one of the days. The start and stop times correspond to the startand stop fields of the column corresponding to the day. The callforwarding functionality is activated only during the at least oneactivation period when the schedule is activated in response to the ONcondition corresponding to the third activation indicator.

An aspect of the present invention provides a method for accessing datarelating to a call forwarding service of a subscriber, the callforwarding data being implemented by a service control point (SCP) in apublic switched telephone network (PSTN) and stored in a databaseassociated with the subscriber and accessible by the SCP. The callforwarding service includes a screening list, which identifies at leastone calling party directory number that is forwarded to a forward-tonumber when a call forwarding function of the call forwarding service isactive, and a schedule, which identifies at least one activation periodduring which the call forwarding function is active and calls may beforwarded to the forward-to number. The method includes receiving aquery relating to the call forwarding data, through a web server in adata network, in response to an instruction from the subscriber at a webclient, which includes a GUI. A portion of the call forwarding data isdisplayed in a status web page at the GUI through the web server. Thestatus web page includes a first ON field and a first OFF fieldassociated with the call forwarding service, a second ON field and asecond OFF field associated with the priority screening list, a third ONfield and a third OFF field associated with the schedule, and aforward-to number field.

Additional call forwarding data may be displayed in a screening list webpage at the GUI through the web server in response to selection of anindicator for modifying data associated with the priority screeninglist. A table of multiple columns is displayed. A first column displaysat least one name of a priority caller and a second column displays thedirectory number associated with the name. The call forwarding serviceroutes calls from the directory number to the forward-to number when thecall forwarding function is active. The display of the additional callforwarding data may further include a third column, displaying adeletion field corresponding to the at least one name and the associateddirectory number of the priority caller. The name and the associateddirectory number are removed from the screening table in response toreceiving a deletion indication from the corresponding deletion field.

Additional call forwarding data may be displayed in a schedule web pageat the GUI through the web server in response to selection of anindicator for modifying data associated with the schedule. A table ofmultiple columns corresponding to days of the week is displayed. Eachday column includes a start time column and a stop time column. Thestart time column displays at least one start time for activating thecall forwarding function and the stop time column displays acorresponding stop time for deactivating the call forwarding functionduring the day of the week corresponding to the day column. The callforwarding service routes calls to the forward-to number only when thecall forwarding function is active in accordance with the scheduletable. The display of additional call forwarding data in the scheduleweb page further includes displaying a preestablished number of starttime fields in the start time column and corresponding stop time fieldsin the stop time column for each day column. The at least one start timeoccupies one of the preestablished number of start time fields and thecorresponding stop time occupies a corresponding stop time field. Theremaining unoccupied start time fields and stop time fields continue tobe displayed in the schedule table.

Another aspect of the present invention provides a system forimplementing a subscriber's call forwarding service, which includes callforwarding service data corresponding to a telephone number of thesubscriber. The call forwarding service data includes a screening listindicating at least one telephone number and a schedule indicating atleast one activation period. The system includes an SCP that processestelephone calls in the PSTN and is configured to communicate with adatabase having the call forwarding service data. The system alsoincludes a web server that enables a communications interface betweenthe database and the subscriber's GUI through a packet switched datanetwork. The web server transmits display data relating to the callforwarding service to display a first screen on the GUI. The firstscreen includes a forward-to number field and activation fields. Theactivation fields include a first activation indicator corresponding tothe call forwarding service, a second activation indicator correspondingto the screening list and a third activation indicator corresponding tothe schedule.

The database may receive data, entered at the GUI, which indicates theforward-to number entered in the forward-to number field. The databasemay further receive selection conditions corresponding to the activationindicators of the activation fields. The database updates the callforwarding service data in accordance with the entered data. The SCPretrieves the updated call forwarding service data and processes callsto the subscriber telephone-number in accordance with the updated callforwarding service data, including activating the call forwardingservice in response to an ON condition corresponding to the firstactivation indicator to implement call forwarding functionality toforward calls to the forward-to number, activating the screening list inresponse to an ON condition corresponding to the second activatorindication to forward only calls from the at least one number to theforward-to number when the call forwarding functionality is active, andactivating the schedule in response to an ON condition corresponding tothe third activation indicator to enable the call forwardingfunctionality only during the at least one activation period.

The first screen may further include a list creation field correspondingto the screening list. The web server further transmits additionaldisplay data to display a second screen on the GUI in response toselection of the list creation field. The second screen includes ascreening table having a name column and a priority telephone numbercolumn. The database receives screening data indicating at least onename, entered in the name column, and a corresponding priority telephonenumber, entered in the priority telephone number column. The SCPretrieves the screening data from the database and forwards only callsfrom the at least one priority telephone number to the forward-to numberwhen the call forwarding functionality is active and when the screeninglist is activated in response to the ON condition corresponding to thesecond activation indicator.

The first screen may also include a schedule creation fieldcorresponding to the schedule. The web server may then further transmitadditional display data to display a third screen on the GUI in responseto selection of the schedule field. The third screen includes a scheduletable having columns corresponding to days in a week, each of thecolumns having at least one start field and a corresponding stop field.The database receives schedule data indicating the at least oneactivation period, including at least one start time and a correspondingstop time during one of days. The corresponding start and stop timescorrespond to the start and stop fields of the column corresponding tothe day. The SCP retrieves the schedule data from the database andactivates the call forwarding functionality only during the at least oneactivation period when the schedule is activated in response to the ONcondition corresponding to the third activation indicator.

Yet another aspect of the present invention provides a computer readablemedium for storing a computer program that enables accessing datarelating to a call forwarding service of a subscriber. The callforwarding data is implemented by an SCP in a PSTN and is stored in adatabase associated with the subscriber and accessible by the SCP. Thecall forwarding service includes a screening list, which identifies atleast one calling party directory number that is forwarded to aforward-to number when a call forwarding function of the call forwardingservice is active, and a schedule, which identifies at least oneactivation period during which the call forwarding function is activeand calls may be forwarded to the forward-to number. The computerreadable medium includes a receiving source code segment that receives aquery relating to the call forwarding data, through a web server in adata network, in response to an instruction from the subscriber at a webclient, which includes a GUI. The computer readable medium also includesa display enabling source code segment that displays a portion of thecall forwarding data in a status web page at the GUI through the webserver. The status web page includes a first ON field and a first OFFfield associated with the call forwarding service, a second ON field anda second OFF field associated with the priority screening list, a thirdON field and a third OFF field associated with the schedule, and aforward-to number field,

The display enabling source code segment may further display additionalcall forwarding data in a screening list web page at the GUI through theweb server in response to selection of an indicator for modifying dataassociated with the priority screening list. The screening list web pageincludes a table having multiple columns, a first column displaying atleast one name of a priority caller and a second column displaying thedirectory number associated with the name. The call forwarding serviceroutes calls from the directory number to the forward-to number when thecall forwarding function is active. The table may further include athird column that displays a deletion field corresponding to the atleast one name and the associated directory number of the prioritycaller. The name and the associated directory number are removed fromthe screening table in response to receiving a deletion indication fromthe corresponding deletion field.

The display enabling source code segment may further display additionalcall forwarding data in a schedule web page at the GUI through the webserver in response to selection of an indicator for modifying dataassociated with the schedule. The schedule web page includes a tablehaving multiple columns corresponding to days of the week. Each daycolumn has a start time column and a stop time column, the start timecolumn displaying at least one start time for activating the callforwarding function and the stop time column displaying a correspondingstop time for deactivating the call forwarding function during the dayof the week corresponding to the day column. The call forwarding serviceroutes calls to the forward-to number only when the call forwardingfunction is active in accordance with the schedule table. Apreestablished number of start time fields in the start time column andcorresponding stop time fields in the stop time column may be displayedfor each day column, so that the at least one start time for activatingthe call forwarding function occupies one of the preestablished numberof start time fields and the corresponding stop time for deactivatingthe call forwarding function occupies a corresponding one of thepreestablished number of stop time fields. The remaining unoccupiedstart time fields and stop time fields continue to be displayed in theschedule table.

The various aspects and embodiments of the present invention aredescribed in detail below.

Flexible Call Forwarding

The present invention is an AIN based system and method that allows asubscriber connected to a communications network, including the Internetand other packet switched type data networks, as well as throughconventional IVR systems, to customize and execute call forwardingservices with near real-time access to the service data. FIG. 1illustrates an exemplary telecommunications network in association withthe present invention, for implementing Flexible Call Forwarding andIntelligent Call Forwarding. The network includes a calling party 20, anoriginating service switching point (SSP) 21, a terminating SSP 24 and asubscriber's telephone 25 (i.e., the call destination or the calledparty). The network also includes a signaling transfer point (STP) 22, aservice control point (SCP) 23, an interactive voice response (IVR) 45and a service node/intelligent peripheral (SN/IP) 57. The network alsoincludes a name database 50 connected to the SCP 23, which can be, forexample a line information database (LIDB).

By way of example, the SCP 23 is implemented with the BellcoreIntegrated Service Control Point, loaded with ISCP software Version 4.4(or higher), available from Telecordia, Murray Hill, N.J. In analternative embodiment of the invention, the SCP 23 may be a LucentAdvantage SCP, with software release 94, available from Lucent Technologies, Inc. An exemplary IVR 45 is available under the trademarkCONVERSANT System for IVR, Version 6.0, Update 1, provided by LucentTechnologies, Inc. The network alternatively incorporates any compatiblestand-alone IVR or advanced intelligence network-intelligent peripheral(AIN-IP or intelligent peripheral) providing an IVR. The SN/IP 57 is,for example, a Compact Service Node or an Enhanced Media Resource Server(eMRS) developed by Lucent Technologies, Inc. (The SN/IP 57 is utilizedin the Intelligent Call Forwarding aspects of the invention, asdiscussed below.)

The SSP 24 is the terminating central office (CO) for the subscribertelephone 25 and the SSP 21 is the originating CO for the calling party20. However, the terminating CO and the originating CO may be the same.The SSPs 21 and 24 may include, for example, 1AESS or 5ESS switchesmanufactured by Lucent Technologies, Inc.; DMS-100 switches manufacturedby Nortel Networks Corporation (Nortel); AXE-10 switches manufactured byTelefonaktiebolaget LM Ericsson, or EWSD switches available from SiemensInformation and Communication Networks, Inc. The switches may utilize anAIN Release 0.1 protocol.

The call service logic of the present invention may be upgraded toaccommodate future AIN releases and protocols and future trigger types.Specifications of AIN Release 0.1 SSPs may be found in TelecordiaTechnical References TR-NWT-001285 or TR-NWT-001299, Switch-ServiceControl Point Application Protocol Interface Generic Requirements, andTelecordia Technical References TR-NWT-001284 or TR-NWT-001298, AINSwitching Systems Generic Requirements, the disclosures of which areexpressly incorporated by reference herein in their entireties.

A data network of the invention includes a web client 30, a web server54 and a service management system (SMS) 48, connectable through theInternet 44. The web client 30 includes a personal computer (PC) 32,i.e., a GUI, operating client software 34, an example of which is ICWClient, available from Southwestern Bell Telephone Company. The SMS 48is capable of transmitting and receiving information to and from the SCP23. Alternatively, the client software 34 can be run at the web server54. The SMS 48 provides the subscriber interface to the SCP 23 from boththe subscriber telephone 25 (or other DTMF telephone) through IVR 45 andthe web client 30 (or other Internet compatible GUI) through the webserver 54, via the Internet 44. The SMS 48 also maintains anddistributes all subscriber specific data for the Flexible CallForwarding service.

The web client 30 incorporates a web browser, such as Microsoft InternetExplorer, available from Microsoft Corporation, or Netscape Navigator,available from Netscape Communications Corporation. In one embodiment,the web client 30 is implemented with an IBM Pentium based PC, runningthe Linux operating system, available from, for example, Free SoftwareFoundation, Inc., or the Microsoft Windows operating system, and runningthe Microsoft Internet Explorer, Netscape Navigator or HotJava,available from Sun Microsystems, Inc., web browser software. Anembodiment of the invention includes the web server 54 running the Linuxor Microsoft Windows operating system and the Apache web serversoftware, available from the Apache Software Foundation, or the Jigsawweb server software, available from World Wide Web Consortium (W3C).

Generally, Flexible Call Forwarding enables a subscriber to directincoming calls to alternative telephone numbers. In an embodiment,Flexible Call Forwarding further includes several optional features thatthe subscriber customizes. Among these features is an “automatic-off”function, which is a preset day and time when Flexible Call Forwardingwill deactivate without further instruction from the subscriber. Also,there is a priority screening list, in which the subscriber designatespriority names and telephone numbers. When the priority screening listis activated, only calls received from the telephone numbers on the listare forwarded. Flexible Call Forwarding also includes a weekly schedule,in an embodiment, which enables the subscriber to schedule up to a weekin advance the time when the service is ON or OFF, the associatedtelephone numbers to which calls are forwarded and whether the priorityscreening list is ON or OFF. Other embodiments allow scheduling furtherin advance.

A subscriber can modify the call forwarding service status via twomethods. First, from any DTMF telephone, the subscriber dials atoll-free number, e.g., an 800 number, to access the IVR 45. Thesubscriber is prompted to enter an account number, along with a personalidentification number (PIN), further discussed below. The subscriberthen has the ability to change the PIN, change the forwarding phonenumber, toggle the service ON and OFF, specify a day and time when theservice will be deactivated, and activate or deactivate the priorityscreening list and the preset weekly schedule. Second, the subscriberhas the option to access the Flexible Call Forwarding service using aGUI via the Internet 44. Over the web connection, the subscriber is ableto implement all of the IVR functions identified above, as well as buildthe priority screening list and design the weekly schedule.

In order to implement Flexible Call Forwarding, a terminating attempttrigger (TAT) is set in the terminating SSP 24. The trigger launcheswhen a call terminates to the subscriber telephone 25. Therefore, whenthe subscriber receives a call, the call is suspended at the terminatingSSP 24 and a termination attempt query is sent to the SCP 23 forinstructions via the STP 22. Upon receiving the query, the SCP 23verifies whether the terminating line, i.e., the subscriber telephone25, subscribes to the Flexible Call Forwarding service. If a FlexibleCall Forwarding subscription is found, the service logic at the SCP 23determines the status of the call forwarding service. In other words, itdetermines whether Flexible Call Forwarding is ON or OFF and whethervarious features have been activated. After making these determinations,the SCP 23 instructs the SSP 24 where to send the suspended call, i.e.,whether to terminate the call to the subscriber telephone 25 or toforward the call to an alternative telephone number previously specifiedby the subscriber.

As stated above, Flexible Call Forwarding may include an automatic-offfunction, a priority screening list and a scheduler. These exemplaryfeatures can be routinely and efficiently customized by the subscriberwithout involvement of the account provider, which conventionally istime consuming and inconvenient.

The automatic-off function enables the subscriber to designate a timefor the Flexible Call Forwarding service to deactivate automaticallyonce the service has been activated. The automatic-off option ispresented to the subscriber each time Flexible Call Forwarding isactivated. If an OFF time is entered, the service stops forwarding calls(i.e., the calls are terminated at the subscriber telephone 25) afterthe designated time. If no OFF time is entered, the call forwardingservice remains active until the subscriber instructs otherwise. If thesubscriber elects to activate the weekly schedule, the automatic-offfunction is disabled to prevent interference with the weekly schedule.

The priority screening list is available for use at the subscriber'soption. The list contains the names and telephone numbers of prioritycallers, as designated by the subscriber. In an embodiment, if thepriority screening list has been activated, the SCP 23 will only forwardcalls originating from phone numbers included in the list. All othercalls are terminated at the subscriber telephone 25. The priorityscreening list is implemented through a screening table, which is storedat the SCP 23 and the SMS 48 and is accessible by the subscriber via theInternet 44, as discussed in detail below.

The scheduler provides a weekly schedule of times for activating anddeactivating the Flexible Call Forwarding service, as well as anyfeatures associated with Flexible Call Forwarding. For example, thescheduler indicates the times at which the priority screening list is ONor OFF, which times do not necessarily correspond to the Flexible CallForwarding service activation. The scheduler also designates thetelephone numbers to which calls are to be forwarded corresponding tothe various ON and OFF times. The scheduler is implemented through atime of day and day of week (“tod/dow”) table, which is stored at theSCP 23 and is accessible by the subscriber by the Internet 44, discussedin detail below.

In another embodiment, a rejection screening list feature is available.This feature is related to the priority screening list feature, exceptthe rejection screening list includes names and phone numbers which areto be rejected. Calls from numbers on the rejection screening list areterminated to the subscriber's number (i.e., not forwarded) or forwardedto an alternative number designated for rejected calls.

A subscriber's exemplary interaction with Flexible Call Forwarding isdepicted in the call flow diagram of FIG. 2. The subscriber is able toaccess the Flexible Call Forwarding service via an IVR 45 or theInternet 44, thereby greatly increasing flexibility and convenience.FIG. 2 depicts interaction with Flexible Call Forwarding over theInternet, using a GUI, for accessing and updating the more complicatedprocedures for customizing the service, including building the priorityscreening lists and weekly schedules, discussed above. In order for thesubscriber to access the Flexible Call Forwarding service via theInternet 44, the subscriber accesses a unique uniform resource locator(URL) associated with the service provider. The URL is an address andidentifies the appropriate protocol for communicating with the serviceover the web. When the subscriber accesses the Internet 44, the webserver 54 provides Flexible Call Forwarding web screens, transmittedfrom the SMS 48, examples of which are shown in FIGS. 3-14. In anembodiment, an alternative manner for accessing the Flexible CallForwarding data via the Internet 44 is through the PCM service,described below.

At step 102 of FIG. 2, the subscriber accesses Flexible Call Forwardingdata by connecting from the web client 30 to the web server 54 throughthe Internet 44. The web server 54 then connects to the SMS 48, whichstores and updates the Flexible Call Forwarding data, as well asauthentication data, at step 103. The web server 54 receives HTTPmessages from the subscriber web client 30 and provides HTML web pagesin response to the subscriber's input. The web pages relate to thesubscriber's Flexible Call Forwarding service, as indicated by the SMS48.

Once connected to the SMS 48 via the web server 52, the user mustprovide authentication information to access the corresponding account.The SMS 48 performs the authentication at step 104. The SMS 48 queriesthe subscriber for an account number and associated password, whichconfirms the user's identity. The SMS 48 then retrieves the accountnumber and associated password or PIN information to confirm that thesubscriber is an authorized user. After successful authentication, theSMS 48 retrieves at step 106 the current service data for the FlexibleCall Forwarding service, including current priority screening lists andweekly schedules, and makes the service data available to thesubscriber. The SMS 48 forwards the service data information to the webserver 54 at step 107, which forwards the data to web client 30 via theInternet 44 at step 108.

The subscriber is presented with a number of options for each telephonenumber in the account. For example, the subscriber can change the PIN,toggle the various Flexible Call Forwarding features ON or OFF, set theautomatic-off function day and time, and activate or deactivate thepriority screening list and the weekly, schedule. In addition, thesubscriber can build or edit the priority screening lists and weeklyschedules.

For example, FIGS. 3-8 depict a set of exemplary web pages to bedisplayed to the subscriber on the monitor of the PC 32 at the webclient 30, according to one embodiment of the present invention. FIG. 3depicts an exemplary web page showing the weekly schedule, discussedabove. The scheduling table 60 contains data entries from left to rightfor a Flexible Call Forwarding on-time, off-time and applicable days ofthe week, which are indicted by MTWTFSS (i.e., Monday, Tuesday,Wednesday, Thursday, Friday, Saturday and Sunday). The first entry 61,for instance, shows an on-time of 3:00 p.m. and an off-time of 7:00 p.m.This period of Flexible Call Forwarding activation is applied Mondaythrough Friday. Similarly, the second activation period 62 is set for9:00 a.m. to 11:30 p.m. on Monday, Wednesday and Friday. The thirdactivation period 63 is scheduled for Saturday, only, beginning at 9:00a.m. and ending at 4:00 p.m. In one embodiment, the days and timesprovided in the scheduler table must be within one week of the time thesubscriber populates the table, although alternative embodiments are notlimited to the one week schedule. The subscriber can easily edit theweekly schedule, in real-time, by simply selecting the Edit button orthe Delete button, included in columns 64 and 65, respectively.

If the subscriber desires to build the schedule by adding anotheractivation period, he or she simply selects the Add One button 66,located directly above scheduling table 60. Upon selecting the Add Onebutton, the subscriber is presented with a new web page at web client30, an example of which is shown in FIG. 4. The subscriber fills in theblank data fields to indicate the desired additional activation period.The Time Start field 76 is the on-time for Flexible Call Forwarding,including an AM or a PM designation. In this example, the subscriberchooses an on-time of 8:00 a.m. Likewise, the subscriber specifies theTime End 77, which is 11:00 a.m. The subscriber then assigns the days ofthe week to which the new activation period applies by simply checkingthe corresponding boxes 68. In this case, the Flexible Call Forwardingperiod of 8:00 a.m. to 11:00 a.m. will automatically activate on Sunday.The subscriber enters the new activation period by choosing the Nextindication 69. The SMS 48 responds by sending the updated weeklyschedule screen to the web client 30, an example of which is shown inFIG. 5. The new activation period 70 is now listed in scheduling table60, acknowledging to the subscriber that the instructions have beenreceived and implemented.

FIG. 6 shows an exemplary web page for the priority screening list,according to an embodiment of the invention. The priority screening list72 contains data entries for priority telephone numbers andcorresponding names. As described in detail below, the SMS 48 storesthese telephone numbers and names, and forwards the telephone numbers tothe SCP 23. Whenever the priority screening list is active, onlytelephone calls from the numbers on the list will be forwarded accordingto the subscriber's Flexible Call Forwarding instructions. Edits andadditions to the priority screening list 72 are implementedsubstantially the same as the weekly schedule edits and additions. Anexisting entry can be edited or deleted using the Edit buttons 73 andthe Delete buttons 74, respectively. Selecting the Add One button 75causes the SMS 48 to send another web page dedicated to building thepriority screening list. The subscriber populates the fields fortelephone number and name, selects Next and is returned to the priorityscreening web page of FIG. 6, which would include the additional entryin list 72.

In addition to editing and building the weekly schedule and the priorityscreening list, the subscriber can specify the call forwarding times andservice to be applied. FIG. 7 shows an exemplary web page presented tothe web client 30 by the SMS 48 for basic Flexible Call Forwardingimplementation. Box 80 is for indicating whether Flexible CallForwarding is ON or OFF. A check mark placed in box 80 activates theservice immediately upon pressing the Next button 87. Boxes 81 and 82relate to the priority screening list and the weekly schedule,respectively. By checking the boxes, the subscriber indicates a desireto activate the respective features (which previously had been builtand/or edited).

Boxes 83 and 84 of FIG. 7 pertain to the automatic-off function,discussed above. The boxes 83 and 84 provide fields for the OFF date andtime, respectively, to stop forwarding calls placed to the subscribertelephone 25 once Flexible Call Forwarding has been activated, indictedat box 80. This OFF date and time is over-ridden by the weekly scheduleof FIGS. 3 and 5, so that the automatic-off function will not interruptthe customized scheduling featured set up by the subscriber.

The Web page of FIG. 7 also requests a voice response PIN at box 85.This is the same PIN that the user uses to access Flexible CallForwarding by telephone, using IVR 45. In an embodiment, the PIN mayalso be used in lieu of a password to initially access the Flexible CallForwarding data over the web.

FIG. 7 also displays a forward-to-number box 86, which is the telephonenumber to which incoming calls are forwarded. In an embodiment, this islimited to a ten-digit number, although alternative embodiments mayinclude additional digits to accommodate international calls. Further,in the depicted embodiment of the invention, the Flexible CallForwarding service allows for one number to which the calls areforwarded any time the service is active, including activation throughthe weekly schedule. In alternative embodiments, the weekly scheduleincludes a forward-to number column in the weekly schedule table 60, sothat the subscriber can redirect incoming calls to alternativeforwarding numbers at different days and times.

The instructions input by the subscriber in FIG. 7 are entered when thesubscriber selects the Next button 87, at which time they are sent fromthe web client 30 through the web server 54 to the SMS 48, indicatedrespectively at steps 109 and 110 of FIG. 2. The exemplary web page ofFIG. 8 is then displayed at the web client 30. Substantiallysimultaneously with entry of these instructions, along with the weeklyschedule and priority screening data, the SMS 48 updates the data storedat the SCP 23, according to the information entered by the subscriber,for implementation at step 112, accordingly. The data stored at the SMS48 is therefore duplicated by the data stored at the SCP 23.

Referring to FIG. 8, the status table 90 presents a summary of theentered information, including the automatic-off date 83, theautomatic-off time 84, the PIN number 85 and the forwarding phone number86. In addition, entries 91-93 indicate the respective status of theservice and optional features. The Y in entry 91 indicates that theFlexible Call Forwarding service is ON. The Ys in entries 92 and 93indicate that the priority screening list and the weekly schedule areactive, respectively.

The Flexible Call Forwarding service may be implemented through any setof web pages that enable the subscriber to effectively interact with theSMS 48 and the SCP 23. For example, FIGS. 9-13 depict an alternative setof exemplary web pages to be displayed to the subscriber on the monitorof the PC 32 at the web client 30, according to an embodiment of thepresent invention. Using the web screens of FIGS. 9-13, the subscriberimplements essentially the same functionality of the Flexible CallForwarding service, as described above. However, alternativepresentations of the data to the subscriber may enhance the usability ofthe service. In particular, FIGS. 9-13 depict a more basic, uncluttereddepiction of the Flexible Call Forwarding service data shown in FIGS.3-8, and therefore are more straight-forward and are potentially lessapt to confuse the subscriber.

FIG. 9 depicts an exemplary web page showing a log on screen 901 thatenables authentication of the subscriber. The subscriber provides theauthentication data by entering the account number for his or herFlexible Call Forwarding service account in box 910, which may be thearea code and telephone number to which the service applies. Thesubscriber then enters the PIN, which, in one embodiment, is at leastfour digits long and includes any combination of numbers (and letters),associated with the account number in box 911. As shown, the PIN isdisplayed only as a series of asterisks to enhance security to avoidunauthorized access to the service data. When the account number and thePIN have been entered, the subscriber selects the Submit button 912, inresponse to which the SMS 48 receives the authentication data from theweb client 30 via the web server 54 and performs the authentication, asdescribed above.

After successfully logging onto the Flexible Call Forwarding service website, the subscriber may select one of the displayed functions: Status920, Change PIN 970, Help 980 and Logoff 990. The Status link 920 linksto a web page that enables the subscriber to visually review the statusof the variable parameters available under the Flexible Call Forwardingservice, such as service activation/deactivation, the priority screeninglist and the weekly schedule. By selecting the Status link 920, a Statusscreen 902 is displayed on the PC 32 of the web client 30, an example ofwhich is depicted in FIG. 10. The Change PIN link 970 links to a webpage that enables the subscriber to change the current PIN to a desiredalternative PIN to be associated with the account number. By selectingthe Change PIN link 970, a Change PIN screen 905 is displayed on the PC32, an example of which is depicted in FIG. 13. Selection of the Logofflink 990 ends the interface session between the SMS 48 and thesubscriber at the web client 30.

Selection of the Help link 980 provides instruction to the subscriber inpreestablished categories relating to operation of the Flexible CallForwarding service from the web site. For example, by selecting the Helplink 980, a Help screen is displayed to the subscriber, which containsexplanations of the Status screen 902 and the related variables, theChange PIN screen 905 and the related variables, and explanations of thepriority screening list and the weekly schedule. In an embodiment of theinvention, the Help link 980 is active and available prior to thesubscriber successfully logging onto the service, i.e., prior toauthentication, unlike the other links. The subscriber is therefore ableto receive instructions regarding the log on process, for example,including assistance in recalling a PIN, without having to first log on.

FIG. 10 depicts an exemplary web page showing the Status screen 902presented to the web client 30 in response to selection of the Statuslink 920 on the Logon screen 901 of FIG. 9. In an embodiment of theinvention, the Status screen 902 is displayed automatically uponsuccessful authentication of the subscriber to provide an immediatesummary of the overall status of the Flexible Call Forwarding service.To simplify the subscriber interaction, the Status screen 902 isstraight-forward in content and uncluttered in appearance. The Statusscreen 902 displays only the most informative Flexible Call Forwardingservice variables for the subscriber's immediate review: the activationstatus of the Flexible Call Forwarding service, indicated by a set ofON/OFF indicators 921; the activation status of the Priority List,indicated by a set of ON/OFF indicators 922; the activation status ofthe Web Schedule, indicated by a set of ON/OFF indicators 923; and theforward-to telephone number, presented in the box 930.

The set of ON/OFF indicators 921 show that the Flexible Call Forwardingservice is currently OFF by the mark appearing in the radio button nextto the word OFF. To activate the service, the subscriber merely clickson the radio button next to ON and selects the Submit Changes button931. The activation signal is sent via the web server 54 to the SMS 48,which updates the SCP 23 to immediately begin implementing the FlexibleCall Forwarding service with respect to calls incoming to the subscribertelephone 25. Similarly, the sets of ON/OFF indicators 922 and 923indicate that the priority screening list and the weekly schedule aredeactivated.

To activate the priority screening list, the Flexible Call Forwardingservice must be ON. The subscriber then clicks on the ON radio button ofthe ON/OFF set 922, corresponding to the Priority List, and selects theSubmit Changes button 931. The Priority List may be indicated as ON atON/OFF set 922, even when the Flexible Call Forwarding service isindicated as OFF at the ON/OFF set 921. However, the Priority List willnot actively function in the PSTN to screen incoming calls until theFlexible Call Forwarding service itself is actually activated, throughthe web client 30 or through the IVR 45. The subscriber may thereforeelect to keep the Priority List ON, so that it is automaticallyactivated whenever the call forwarding function of the Flexible CallForwarding service becomes active, including selective activation inaccordance with the weekly schedule.

Likewise, to activate the weekly schedule, the Flexible Call Forwardingservice must be ON. The subscriber then clicks on the ON radio button ofthe ON/OFF set 923, corresponding to the Web Schedule, and selects theSubmit Changes button 931. The Web Schedule may be indicated as ON atON/OFF set 923, even when the Flexible Call Forwarding service is OFF atthe ON/OFF set 921. However, the Web Schedule will not function in thePSTN until the Flexible Call Forwarding service is actually activated,through the web client 30 or through the IVR 45. Also, even when boththe Flexible Call Forwarding service and the Web Schedule are ON, callsare forwarded to the forward-to number in box 930 only during theactivation periods indicated in the weekly schedule, an example of whichis shown in the Web Schedule screen 904 of FIG. 12.

The Status screen 902 includes a number of additional links and buttonsthat are presented outside of the central viewing area of the screen, toavoid confusing the subscriber with ancillary information and choices.The Reset button 932 enables the subscriber to automatically reset allof the status entries to their respective values at the beginning of theinterface session. The Status link 920, the Change PIN link 970, theHelp link 980 and the Logoff link 990 are the same as previouslydiscussed with respect to the Logon screen 901. The Priority List link940 links to a web page that enables the subscriber to visually reviewand edit the current list of priority telephone numbers established bythe subscriber. By selecting the Priority List link 940, a Priority Listscreen 903 is displayed on the PC 32 of the web client 30, an example ofwhich is depicted in FIG. 11. The Web Schedule function link 950 enablesthe subscriber to visually review and edit the current weekly scheduleestablished by the subscriber. By selecting the Web Schedule link 950, aWeb Schedule screen 904 is displayed on the PC 32 of the web client 30,an example of which is depicted in FIG. 12.

In an embodiment of the invention, the Status screen 902 includesalternate means to access the Priority List screen 903 and the WebSchedule screen 904. For example, the Status screen 902 may include thecreate links 925 and 926, which respectively correspond to the PriorityList and the Web Schedule. By selecting the create link 925, thePriority List screen 903 is displayed on the PC 32, enabling thesubscriber to create and edit the priority screening list information tobe implemented. By selecting the create link 926, the Web Schedulescreen 904 is displayed on the PC 32, enabling the subscriber to createand edit the weekly schedule information to be implemented.

As discussed above, FIG. 11 depicts an exemplary web page showing thePriority List screen 903 presented to the web client 30 in response toselection of the create link 925 on the Status screen 902 or thePriority List link 940. The Priority List screen 903 clearly depicts thecurrent priority screening list in table 941, which includes only threecolumns to avoid displaying an overabundance of information to thesubscriber. The table 941 includes a Name column 942 and a TelephoneNumber column 943, which respectively include the names and telephonenumbers of the priority screening list entries. The Name column 942 isfirst because the subscriber most readily identifies the name (asopposed to the telephone number) of the person or entity that has beenassigned priority status

The third column in table 941 is the Delete column 944. Each entry inthe table 941 includes in the Delete column 944 a deletion indicator945, consisting of the word YES with an adjacent activation box. Todelete an existing entry, the subscriber simply clicks on the YES box,resulting in a mark within the box, associated with the name andtelephone number the subscriber wishes to delete. The subscriber thenselects the Submit Deletions button 949, which appears on the PriorityList screen 903 outside the table 941, to avoid cluttering thepresentation of the priority screening list data. Selection of theSubmit Deletions button 949 results in the elimination of each entry intable 941 having a corresponding YES box checked in the Delete column944.

The Priority List screen 903 further enables the subscriber to addentries to the priority screening list table 941. The subscriber entersthe name of the priority party in box 946 and the correspondingtelephone number in box 947. The name is entered in the order thesubscriber wishes it to appear in the table, e.g., first name first orlast name first. The subscriber then selects the Add button 948,resulting in the new name and telephone number being entered in thetable 941. In an embodiment, the names are automatically sorted andentered into the table 941 alphabetically, enabling the subscriber toeasily locate desire names when reviewing the table. When the Add button948 and the Submit Deletions button 949 are selected, the correspondingchanges to the priority list table 941 are sent to the SMS 48 to bestored and sent to the SCP 23 to be implemented, as discussed above.

FIG. 12 depicts an exemplary web page showing the Web Schedule screen904 presented to the web client 30 in response to selection of thecreate link 926 on the Status screen 902 or the Web Schedule link 950 onany screen. The Web Schedule screen 904 depicts the existing weeklyschedule for activating the call forwarding functionality of theFlexible Call Forwarding service in the Web Schedule table 951. In thedepicted embodiment of the invention, the subscriber has one weeklyschedule available for automatically activating the call forwardingfunctionality. In alternative embodiments, the subscriber has multipleweekly schedules available, each of which is associated with a separateWeb Schedule table, e.g., Web Schedule A, Web Schedule B, etc., having acorresponding designation on the Status screen 902 of FIG. 10. Thesubscriber is then able to build multiple weekly schedules andselectively activate them from the Status page 902, as described above,or through the IVR 45, as described below.

The Web Schedule table 951 includes seven day columns corresponding tothe seven days of the week. Although the Web Schedule table 951 showsonly the Monday schedule 952, the Tuesday schedule 953, the Wednesdayschedule 954 and the Thursday schedule 955, the schedules for theremaining days of the week are accessible by sliding the scroll bar 968at the bottom of the Web Schedule screen 904 to the right.

Within each of the seven day schedules 952-955 are two columnsindicating a start time and a corresponding stop time, which enable thesubscriber to define the time periods during which the call forwardingfunctionality is active each day. In the depicted embodiment of theinvention, each of the day schedules 952-955 allow up to five activationperiods, as indicated by the five rows of boxes in each of the starttime and stop time columns. The depicted layout allows the subscriber toeasily view, understand and edit the activation time periods for theweek. For example, when the subscriber desires calls to be forwarded tothe forward-to number during the same time period every day, he or shemay enter that time period across the same row of start times and stoptimes in the table 951 and select the Submit Changes button 969 to storeand implement the entered data. The subscriber is then able to easilyverify the entries by merely scanning a single row of time entries inthe adjacent day schedules and confirming that they match.

The Web Schedule screen 904 of FIG. 12 includes exemplary activationtime periods to illustrate use of the weekly schedule. The Mondayschedule 952 includes two activation time periods 962 and 963. The firstactivation time period 962 begins at 7:00 a.m., as indicated by thefirst entry in the start column 956, and ends at 11:00 a.m., asindicated by the first entry in the stop column 957. The secondactivation time period 963 begins at 11:30 a.m., as indicated by thesecond entry in the start column 956, and ends at 5:30 p.m., asindicated by the second entry in the stop column 957. The two activationtime periods are listed in chronological order, so that the subscriberis able to clearly visualize the start and stop times in relation to oneanother. In an embodiment of the invention, the subscriber is requiredto list the activation time periods of each day in chronological order,by either rejecting entries that are out of order or by automaticallyrearranging the activation time periods when the subscriber selects theSubmit Changes button 969.

The Tuesday schedule 953 of the Web Schedule table 951 includes oneactivation time period 964, beginning at 7:00 a.m., as indicated by thefirst entry in the start column 958, and ending at 5:00 p.m., asindicated by the first entry in the stop column 959. Similarly, theWednesday schedule 954 includes one activation time period 965,beginning at 9:00 a.m., as indicated by the first entry in the startcolumn 960, and ending at 6:00 p.m., as indicated by the first entry inthe stop column 961. In the depicted embodiment, each of the boxes thatdoes not have a specific time entry displays the word “choose,” as shownin box 966, for example, in order to hold the place in the start or stopcolumn and to indicate the availability of another activation timeperiod, if desired. Alternative embodiments may include more or feweravailable time entries, although the number of time entries should notclutter the screen and thereby cause confusion to the subscriber.

The time entries in the start and stop columns are entered by thesubscriber by selecting the desired box and typing the time, includinga.m. or p.m., using a keyboard associated with the PC 32. The desiredbox is selected using conventional means, such as clicking on the boxusing a mouse or jumping from box to box using the tab key on thekeyboard. Each of the time entry boxes also includes a drop-down listfeature activated by selecting a drop-down list indicator 967. Thedrop-down list enables the subscriber to avoid manually typing the startand stop times by enabling selection from among preset morning (a.m.)and afternoon (p.m.) times shown in the drop-down list. The preset timesare divided into convenient increments, such as every hour, every halfhour, every fifteen minutes, etc. When the subscriber desires a start orstop time that does not match the preset time increments, the subscriberis not able to use the drop-down list feature. Of course, the presentinvention contemplates use of any conventional means for entering dataon a web page, including use of a touch sensitive screen on a personaldigital assistant (PDA) or a hand-held PC, for example.

FIG. 13 depicts an exemplary web page showing the Change PIN screen 905presented to the web client 30 in response to selection of the ChangePIN link 970. To change the PIN, the subscriber must first accuratelyenter the existing PIN in the Current Pin box 971. Even though thesubscriber is already logged onto the Flexible Call Forwarding serviceweb site, requiring the existing PIN to be entered again assures thatthe PIN will not be changed inadvertently or by someone other than thesubscriber who has access to an already logged on web client 30. Thecharacters entered in box 971 are authenticated by the SMS 48 in thesame manner as described above with respect to the log on process. Thesubscriber then enters the desired new PIN in box 972, and repeats theentry in box 973. The two entries are compared and the existing PIN isnot changed to the new PIN unless the entries match. Entering the PINtwice assures that the subscriber does not inadvertently change the PINto a number that results from a faulty key stroke, for example. Thechange is implemented in the SMS 48 when the subscriber selects theSubmit button 974. When the entries in boxes 972 and 973 do not match,however, the subscriber is notified accordingly and invited to tryagain. When the subscriber selects the Reset icon 932, prior to exitingthe Change PIN screen 905, the PIN is returned to the same character itwas at the time the Change PIN screen 905 was accessed.

In other embodiments of the invention, the Flexible Call Forwardingservice forwards telephone calls to alternative numbers, depending onthe priority screening list. For example, a calling party number on thepriority screening list is forwarded to the current location of thesubscriber and a calling party number not on the list is terminated atthe original called party number. Furthermore, an embodiment includes arejection screening list for the subscriber to identify specificdirectory numbers from which he or she does not wish to accept forwardedcalls, or directory numbers that are forwarded to an alternativetelephone number or message center.

For example, FIG. 14 shows an exemplary web page, entitled Call StatusScreen, that displays summary information from a weekly scheduleintegrated with a priority screening list and a rejection screeninglist. The directory number 99 at the bottom of the screen is thetelephone number of the subscriber using the service. Boxes 94-98display scheduling options created and edited by the subscriber usingthe web client 30, as described above. Each box includes ON and OFFicons, which can be selected after the particular schedule andassociated screening lists have been created, using either the webclient 30 via the Internet 44 or the IVR 45 via the PSTN.

Box 94 is the basic call forwarding function in which, when activated,all calls are forwarded to telephone number 312-555-1616. (As shown,this number coincides with the subscriber's voice mail, which in anembodiment may be a call control option, discussed below.) All callscontinue to be forwarded to this number until the subscriber deactivatesthis function, i.e., selects the OFF icon, or until the day and time setin the automatic-off function (not shown) is reached.

Box 95 of FIG. 14 is a summary of essentially the same type ofinformation shown in the exemplary web page of FIG. 3. From the starttime of 7:00 a.m. to the stop time of 3:00 p.m., Monday through Friday,all calls are automatically forwarded to the previously identifieddirectory number, 312-555-1616, with no further action by the subscriber(other than activating box 95). Box 96 is similar to box 95, except thatbox 96 incorporates a priority screening list. Therefore, from 3:00 p.m.to 7:00 p.m. on Saturday, the Flexible Call Forwarding service forwardsonly calls from the two numbers on the priority screening list, i.e.,601-555-5555 and 134-123-1234, to a priority forwarding number, i.e.,312-338-8353.

Box 97 shows an example of using a rejection screening list inconjunction with a priority screening list. Assuming that the subscriberdesires to return calls from those directory numbers on a secondpriority screening list, i.e., calls from 701-555-5555 and 123-444-4444,callers associated with the directory numbers on the second prioritylist will hear an announcement to that effect whenever they call thesubscriber's number while box 97 is activated. However, calls from thedirectory numbers on the rejection screening list, i.e., 608-555-8282and 312-555-9999, will hear an announcement instructing the caller toattempt the call at a later time.

Box 98 shows another embodiment of the invention in which the FlexibleCall Forwarding service provides another priority screening list,referred to, for example, as the special forward list. This list isbuilt by the subscriber using the web client 30 in the same mannerdescribed with respect to the priority screening list. Once created andimplemented, i.e., activated by selecting the ON icon on the GUI of webclient 30 or sending the appropriate touch tone over the IVR 45, callsfrom the special forward list directory numbers are sent to anotheroptional telephone number (or played an alternative announcement)according to the subscriber's instructions.

Exemplary steps through which the subscriber can alternatively interactwith Flexible Call Forwarding using the IVR 45 are shown in FIG. 15. Asstated above, access through the IVR 45 is slightly limited in that thesubscriber cannot actually build or edit priority screening lists andweekly schedules. However, the subscriber can access all other featuresof the Flexible Call Forwarding service, including changing the PIN,toggling the Flexible Call Forwarding service ON or OFF, setting theautomatic-off function day and time, and activating/deactivating thepriority screening list and weekly schedule.

Referring to FIG. 15, the subscriber calls a toll free number from anyDTMF telephone, which directly accesses the IVR 45, shown at step 1520.FIG. 15 depicts, for example, the call originating from the subscribertelephone 25. The IVR 45 receives the call and initiates a request forvarious authentication information, including the account and PINnumbers. These numbers coincide with the account and PIN numbers used toaccess the Flexible Call Forwarding service via the Internet 44. Thepre-programmed voice announcements for this aspect of the inventionreside in the IVR 45, and implementation of the voice announcements iswell known. The authentication information is provided using the touchtones of the DTMF subscriber telephone 25. The IVR 45 forwards theinformation to the SMS 48 at step 1522 for verification at step 1524.

After verification, the system operates in much the same way asdescribed above with respect to a GUI and the Internet. The SMS 48retrieves at step 1526 the current service data for the Flexible CallForwarding service, including current priority screening lists andschedules, and provides the IVR 45 with the call forwarding dataspecific to the subscriber at step 1528. The IVR 45 then verballyrecites a menu of options to the subscriber at step 1530 based on theinformation received from the SMS 48. For example, if the subscriber haspreviously built a priority screening list, activation of this list willbe included among the options provided to the user over the telephone.The subscriber listens to the options and inputs various choices at step1532 via the telephone touch tone key pad, including, for exampleturning on Flexible Call Forwarding or selecting and activating apredefined priority list or weekly schedule. The subscriber can also setthe automatic-off function date and time.

These commands are forwarded from the IVR 45 to the SMS 48 at step 1534,which updates the Flexible Call Forwarding data contained in the SCP 23at step 1536. Once stored at the SCP 23, Flexible Call Forwarding is setwith respect to incoming calls in accordance with the customizinginstructions from the subscriber.

FIG. 16 is a call flow diagram depicting an exemplary implementation ofFlexible Call Forwarding in response to an incoming telephone call. Atstep 1642, a calling party 20 places a call to the telephone number ofthe subscriber telephone 25. The call proceeds through the originatingSSP 21 (not pictured) to the terminating SSP 24, which launches an AINTerminating Attempt Trigger (TAT) query to the SCP 23 at step 1644. Oncethe trigger has been assigned and activated, every call terminating tothe subscriber's line will cause the SSP 24 to launch the TAT query viathe existing SS7 network.

Step 1644 of FIG. 16 coincides with step s1704 of FIG. 17, which is aflow diagram depicting the logic flow of handling an exemplary callaccording to an embodiment of the invention. In particular, at steps1704, the SCP 23 receives a termination attempt query message from theSSP 24. The data corresponding to the termination attempt query includesstandard AIN parameters, such as a called party identification numberand a calling party identification number.

After receiving the TAT query, the SCP 23 internally processes the dataat step 1646 of FIG. 16. The SCP 23 first determines at step s1706 ofFIG. 17 whether the called party is a Flexible Call Forwardingsubscriber. The determination is accomplished by comparing the queryparameters from the SSP 24 to a list of subscribers in the Flexible CallForwarding database of the SCP 23. If there is no match, the SCP 23concludes that the called party is not a Flexible Call Forwardingsubscriber and sends an authorize termination instruction to the SSP 24,which terminates the call to the dialed telephone number, as indicatedat steps s1724 and s1730, ending the process at step s1732. In otherwords, the SCP 23 instructs the SSP 24 to simply complete the call asdialed with no further processing.

If the SCP 23 finds a match at step s1706, indicating that the calledparty is a subscriber to Flexible Call Forwarding, the process proceedsto step s1708, which determines whether the Flexible Call Forwardingservice is ON or OFF. The ON/OFF status is indicated by a data flag, forexample. If the Flexible Call Forwarding service is OFF, the logicproceeds to steps s1724 and s1730, as described above. That is, the SCP23 sends the authorize termination instruction to SSP 24, whichterminates the call to the called party number. If Flexible CallForwarding service is ON, then the SCP 23 must determine which functionshave been activated by the subscriber.

At step s1710, the SCP 23 determines whether the scheduler is ON or OFF.The scheduler status is also indicated by a data flag, for example. Ifthe scheduler is OFF, the SCP 23 proceeds to step s1712, whichrepresents the automatic-off function of Flexible Call Forwarding. Aspreviously described, and as shown in FIG. 17, the automatic-offfunction is entirely bypassed whenever the scheduler is activated,thereby preventing conflicting instructions from the two features. Withrespect to the automatic-off function, the SCP 23 first determineswhether a time has been entered into the Data Counter field, whichindicates the time at which the subscriber wishes call forwarding to bediscontinued. If there is no time entered, the SCP 23 assumes that callforwarding is still active and proceeds to step s1718 to determinewhether the priority list is activated. If there is a time in the DataCounter field, which indicates the automatic shut-off time, the currenttime of day, provided by a timer of the SCP 23, is checked against theshut-off time at step s1714. If the current time is later than theshut-off time, the SCP 23 instructs SSP 24 to terminate the call to thecalled number of the subscriber telephone 25, at step s1724. Otherwise,the SCP 23 proceeds to step s1718.

If it is determined at step s1710 that the scheduler is on, the SCP 23accesses the scheduler table to execute call forwarding accordingly. Inan embodiment, the weekly schedule includes a time of day/day of week(“tod/dow”) table, which may have the multiple entries. As discussedabove, at a minimum, the tod/dow table contains multiple sets of starttimes and end times, as well as fields for identifying the days of theweek for activation. The fields, for example, contain data indicatingwhich days of the week have been designated activation periods. In anembodiment of the invention, the table also stores telephone numberscorresponding to the various activation periods of Flexible CallForwarding.

At step s1716, the SCP 23 determines whether the tod/dow table is foundand populated. If there is no such table or the table exists but isunpopulated, the SCP 23 proceeds to step s1724, where the call isterminated to the called number of the subscriber telephone 25.Otherwise, the SCP 23 determines the forwarding instruction according tothe current time, the times and days indicated by the tod/dow table and,in one embodiment, the forwarding telephone numbers. If the tableindicates that the current time falls within a period during which callforwarding is not active, then the SCP 23 instructs the SSP 24 toterminate the call to the called party number.

Otherwise, the process proceeds to step s1718, where the SCP 23determines whether the priority screening list feature is ON or OFF. Ifthe list feature is OFF, the SCP 23 simply instructs the SSP 24 toforward the telephone call to the designated forwarding number, at steps1722. If the list feature is on, the number of the calling party 20 isused to determine whether the caller is on the priority screening list,indicated at step s1720. The list accommodates multiple entries forpriority calls (e.g., 75, in one embodiment) and is populated withtelephone numbers associated with whomever the subscriber has previouslyidentified as a priority caller. When the priority screening listfeature is on and the calling party number 20 does not appear on thatlist, the SCP 23 instructs SSP 24 to terminate the call to thesubscriber telephone 25, at step s1724. Otherwise, the SCP 23 instructsthe SSP 24 to forward the call to the designated phone number, indicatedat step s1722. The call is then routed accordingly at step s1730, endingthe process at step s1732.

Referring back to FIG. 16, in order to instruct the SSP 24 to forward acall, the SCP 23 sends a forward call message to the SSP 24 at step1648. In an embodiment of the invention, the forward call message sentby the SCP 23 to the SSP 24 includes standard AIN parameters. The SSP 24then completes the connection between the calling party 20 and theforwarding number at step 1650, resulting in a final connection betweenthe two. In the alternative, if the SSP 24 is instructed to terminatethe call to the called party number of the subscriber telephone 25, theSCP 23 sends the authorize termination message, previously discussed, tothe SSP 24 at step 1652. The SSP 24 then completes the connectionbetween the calling party 20 and the subscriber telephone 25 (i.e.,called party number) at step 1654, resulting in a final connectionbetween the two.

System errors that occur while processing a call under Flexible CallForwarding generally result in the call being terminated to thesubscriber telephone 25. For example, if the SSP 24 does not receive aresponse to the termination attempt query from the SCP 23 within apredetermined time, e.g., 3 seconds, the call is terminated to thesubscriber telephone 25. Other errors resulting in termination to thesubscriber telephone 25 include the SSP 24 receiving any report of anapplication error after sending a termination attempt query and the SSP24 detecting a protocol or application error in an authorize terminationmessage from the SCP 23.

Personal Call Manager

Flexible Call Forwarding may be integrated with a Personal Call Manager(PCM) service to enhance functionality and compatibility with other callcontrol services. PCM is an AIN based service that allows a subscriberconnected to a communications network, including the Internet and otherpacket switched type data networks, as well as through conventional IVRsystems, to customize and execute services associated with telephoniccommunications, with near real-time access to the service data. FIG. 18illustrates an exemplary telecommunications network in association withPCM. The network includes a calling party telephone 20, an originatingSSP 21, a terminating SSP 24 and a subscriber telephone 25, an STP 22and an SCP 23, examples of which have been previously described. Thenetwork also includes an AIN/IP (intelligent peripheral) 40, whichincorporates an IVR 45. In alternative embodiments, the intelligentperipheral may be an IBM Resource Manager or a Lucent PacketINApplication Server.

An associated data network includes a web client 30, a web server 54, anauthentication/subscription information server 42 and a service statusdatabase 41. The data network communicates to the PSTN (specifically theSCP 23) through the intelligent peripheral 40 using the SR-3511 protocol46, or an equivalent protocol. In an embodiment of the invention, thefunctions of the intelligent peripheral 40 may be performed by the SN/IP57, shown in FIG. 1, such as an IBM Resource Manager, a Lucent CompactService Node or a Lucent Enhanced Media Resource Server (eMRS).

FIG. 19 is an exemplary call flow diagram depicting a subscriber usingthe PCM service. Initially, the subscriber accesses a public packetswitched data network, such as the Internet, from a web client 30, usinga web browser such as Microsoft Internet Explorer, Netscape Navigator orHotJava. Once on the Internet, the subscriber connects to the web server54 at step 1910, which serves as a secure access platform. The webserver 54 receives HTTP messages from the web client 30 and providesHTML web pages, or the like, in response to the subscriber's input tothe web client 30. The web pages relate to the subscriber's PCM account.

Once connected to the web server 54, the user must first log-in to thePCM account, also depicted at block 201 in FIG. 21 and described below.The log-in equates to an authentication of the user. To perform theauthentication, the web server 54 contacts theauthentication/subscription information (ASI) server 42 at step 1911,which confirms that the subscriber is an authorized user by verifying atleast the subscriber's name and a password (or a PIN). The ASI server 42also provides to the web server 54 a list of the services to which theuser has subscribed in the PCM account at step 1912. The services foreach phone number are linked to the PCM account through the ASI server42.

At steps 1913 and 1914, the web server 54 then retrieves from the SCP23, via the intelligent peripheral 40, current service data and therelated status of the various services, such as call monitoring andFlexible Call Forwarding, managed through the PCM account. The data andstatus of the services, i.e., service data, is forwarded to the webclient 30 at steps 1915 and 1916. A PCM summary page is displayed on theweb client 30 at step 1920, as seen for example in FIG. 24, discussed indetail below.

In another embodiment, depicted in FIG. 20, after logging in and beingauthenticated at steps 1910-1912, the web server 54 retrieves from aservice status database 41 the data and status of the various servicesmanaged through the PCM account at steps 1917 and 1918, rather than fromthe SCP 23, directly. This database serves as a cache for the serviceinformation in the SCP 23. The service status database 41 containsinformation current to the most recent update interface with the SCP 23.The cache arrangement enables the user to efficiently access thisinformation without waiting for the SCP 23 to process the request. Atthe same time, it reduces SCP 23 traffic. The service status database 41is refreshed periodically to ensure currency, as well as pursuant to aspecific command by the user. This database is a conventionallightweight directory access protocol (LDAP) database, such as the LDAPdatabase available from Lucent Technologies, Inc. In the alternative,the database may be a standard relational database, such as thoseavailable from Oracle Corporation or Sybase, Inc.

Upon review of the service status, the user may choose to interact withone or all of the available services, as shown in FIGS. 19 and 20. Whenthe user selects a desired service, a message is sent at step 1921 tothe web server 54, which responds with the corresponding service screen.When the user selects a particular service necessitating access to thePSTN (e.g., OCC or ICM), the request is sent to the intelligentperipheral 40 at step 1922.

Significantly, the intelligent peripheral 40 may be the same intelligentperipheral that implements IVR access to the user's services through aconventional PSTN. The intelligent peripheral 40 internally translatesdata messages received from the web server 54 and accesses the relevantcall services data from the SCP 23 at step 1923 through the SR-3511protocol, the use of which enables the simultaneous compatibility withfunctions of the IVR 45. Details of the SR-3511 protocol are provided inBellcore, Recommendation SR-3511 SCP Intelligent Peripheral (IP)Interface Specification for TCP/IP, Version 5.0 (January 1997), thedisclosure of which is expressly incorporated by reference herein in itsentirety. In various embodiments, the translation program is in C, C++or JAVA. The intelligent peripheral 40 then transmits a summary of therequested service, based on information received from the SCP 23 at step1924, to the web server 54 at step 1925. The web server 54 sends theinformation to the web client 30 at step 1926 to be displayed to theuser.

At this point, the user may choose to update or to simply review theservice information. When the service is updated, the web server 54sends the update instructions in a data message to the intelligentperipheral 40. The intelligent peripheral then translates the updateinstruction into the SR-3511 protocol and communicates the updatedservice parameters directly to the SCP 23.

For example, one available service is call manager, discussed in detailbelow, which includes an Incoming Call Manager (ICM), by which the usermay prioritize, forward, preview or block selected telephone numbers. Inthe update procedure, the subscriber enters a telephone number to beblocked, for instance, which the web server 54 communicates to theintelligent peripheral 40. The intelligent peripheral 40, in turn, sendsthe data via SR-3511 to the SCP 23, which flags the number to beblocked. Because the instructions of the intelligent peripheral 40 tothe SCP 23 are sent and implemented immediately, without the involvementof the provider's account management or customer service, the changes tothe service are operable and available shortly after the user sends theinstructions. In an embodiment that includes the service status database41, the cache will then be updated in due course to reflect the updatedinformation in the SCP 23.

FIG. 21 depicts the procedure followed by the subscriber when firstentering the PCM web site. The subscriber must first log-in at block201. Assuming the subscriber's PCM account has already been established,as described below, he or she must provide the authentication data toproceed. The authentication data is entered at a log-in screen, anexample of which is depicted in FIG. 22 at screen 220. To maintain theintegrity of the secure platform, authentication requires preferably auser ID and a password. The user ID is any name, not necessarily uniquewithin the PCM system, selected at account initiation by the subscriber.The password is confidential (at the subscriber's discretion) and mustbe unique with respect to the associated user ID. The subscriber maychange the password as desired, but appropriate authentication data mustbe provided prior to such changes. If the subscriber enters an invaliduser ID or password, the web server 54 responds with a messageexplaining the problem and allows another chance to enter correct data.

After the subscriber is authenticated, the subscriber proceeds to enterthe PCM at block 202. At this time, the user views a generalinformational screen 222 of FIG. 22, which is formatted at thediscretion of the service provider. It may include, by way of example,new services offered to the subscriber. After the subscriber elects toproceed into the PCM, the web server 54 navigates to a page 226 thatdisplays telephone numbers associated with the PCM account(s) to whichthe user belongs and to which the user is authorized to access. FIG. 23depicts an exemplary screen displaying phone numbers to which the userhas access.

At this point, the user selects a telephone number at block 203 and thecorresponding services are displayed for the selected telephone numberat screen 224. The user may then elect to implement the various servicesin place for a particular phone number. In an embodiment of theinvention, if the subscriber selects the Flexible Call Forwardingservice in the PCM account, he or she further enters the appropriatePIN. Alternatively, at block 202 the user may elect to manage the PCMaccount at blocks 211 and 212, depending on the user's privileges withina particular account to manage the PCM account.

If the PCM has more than one associated telephone number, the user wouldsee a web page listing the numbers, as in block 226 of FIG. 22. Thescreen has user interface elements that allow the user to select one ofthe numbers. Thus, each PCM account keeps track of a non-empty set ofphone numbers to be managed through the PCM on behalf of thecorresponding set of users, presumably members of a family, business,organization or other group.

After the user selects a phone number at block 203, the system displaysfor the user a PCM summary page 204 corresponding to the selectedtelephone number. The PCM summary page displays only data the user isauthorized to see for the selected telephone number. As shown at screen224, the PCM summary provides various options to the user, including byway of example, selecting from among listed services 206-209, returningto select an alternative PCM telephone number or exiting PCM altogetherat block 213.

FIG. 24 shows an exemplary PCM summary display, which corresponds toscreen 224 of FIG. 22, entitled Personal Call Manager Home Page foraccount number (512) 555-5831, which is the selected telephone number inthe example. FIG. 24 shows four services accessible through the PCM,although the four services are not intended to be limiting. That is, thePCM is able to administer any call services associated with an SCP 23.The services depicted in the PCM summary screen 224, as well as in FIG.24, are Caller ID Log 240, Message Center 242, Incoming Call Manager(ICM) 244 and Outgoing Call Control (OCC) 246. The displayed informationis summary in fashion, the details being available to the user throughselection of one of the available services, which displays a PCM servicescreen 228 of FIG. 22. At the summary screen, the Caller ID Log 240 ofFIG. 24 retrieves data from the SCP 23 and shows, for example, thenumber of call records added since the last review. The Message Center242 retrieves data from the SCP 23 and shows the number of new callnotes, e-mails, wireless calls, faxes and messages reviewed. The ICM 244of FIG. 24 likewise retrieves data from the SCP 23 and shows the statusof the call blocker, call forwarding, priority call and caller previewfeatures. The OCC summary 246 retrieves data from the SCP 23 and showswhether international calls, long distance calls, 900/976 numbers and/ordirectory assistance calls are restricted.

From the PCM summary screen, the user may choose to use PCM to manageany of the displayed services, indicated at block 205 in FIG. 21. Thisis done by simply clicking on one of the display boxes 240-246 of FIG.24 to cause the web server 54 to display a new web page corresponding tothe selected service. Or, the PCM summary page includes a list of thepersonal services 248, which duplicates the display boxes. In addition,the list 248 may include additional personal services that do notrequire interaction with the SCP 23. These services include, forexample, a personal directory, paging capability and billing review.

The paging capability provides the option of paging the subscriber whena caller ID is received from a subscriber specified phone number. Pagingmay include a page, a wireless short message, an e-mail, or a generatedphone call to a specified number. Moreover, caller ID logs can becollected and paged to the subscriber at periodic intervals with summaryand/or detailed information.

After selection of one of the services, the web server 54 navigates toand displays the selected services web page, indicated by blocks206-209, and displays the corresponding service screen 228 of FIG. 22.The user may review information, activate or deactivate the service orchange the scope of the service, as desired, in accordance with thelevel of access available to that user. After accessing one of theavailable services, the user may return to the PCM summary page at block210. Returning can be accomplished by selecting a specific option toreturn or by simply clicking the BACK icon provided by the web browser.The user may also exit PCM at block 213 of FIG. 21, ending the currentsession at block 230 of FIG. 22.

Intelligent Call Forwarding

An additional embodiment of the present invention will be referred to asIntelligent Call Forwarding. Intelligent Call Forwarding is a callcontrol service that is closely related to Flexible Call Forwarding andprovides complementary features. Flexible Call Forwarding is implementedto forward telephone calls to at least one pre-designated numberwhenever the subscriber anticipates not being available at thesubscriber telephone 25, but Flexible Call Forwarding does not providecall processing whenever the caller encounters a busy signal at thesubscriber's line. The inability to forward calls is particularlyproblematic when the subscriber is connected to the Internet via thetelephone line to which incoming calls are attempting to connect.Conventionally, the calling party simply receives a busy signal (or issent to a message mailbox) and the subscriber has no notice of theincoming call.

An embodiment of the invention addresses two related services. One ofthe services is referred to as Intelligent Call Forwarding, whichenables the subscriber connected to the Internet to direct incomingcalls to alternative telephone numbers, including numbers that playannouncements or accept messages, without interrupting the Internetsession. For example, the announcements may include a message informingthe calling party that the party they are trying to reach is busy andthat the caller should call back later, or a message informing thecalling party that the party they are trying to reach is busy and willcall them back later. Intelligent Call Forwarding includes severaloptional features similar to Flexible Call Forwarding that thesubscriber may customize. Among these features are a weekly schedule,which allows the subscriber to schedule up to a week in advanceactivation and deactivation times, as well as associated forwardingphone numbers. Another feature is a priority screening list, in whichthe subscriber designates priority names and telephone numbers. Relatedto the priority screening feature is a screening rejection list feature,which terminates an incoming call to the called number or forwards therejected call to a pre-designated number having an appropriateannouncement (switch-based, or otherwise).

As in the case of Flexible Call Forwarding, there are two methods bywhich subscribers may modify call forwarding service status. First, fromany DTMF telephone, the subscriber dials a toll-free number, e.g., an800 number, to access an IVR. When connected to the IVR, the subscriberis prompted to enter the account number, along with a personalidentification number, as discussed above. The subscriber then has theability to change the PIN, change the forwarding numbers, toggle theservice on/off, specify a day and time when the service will bedeactivated and activate or deactivate the priority screening list, therejected call list and the weekly schedule. Second, the subscriber hasthe option to access the Intelligent Call Forwarding service using a GUIvia the Internet. Over the web connection, the subscriber is able toimplement all IVR functions, as well as build the screening lists anddesign weekly schedules. The Intelligent Call Forwarding service, whenactive, automatically takes effect whenever the subscriber accesses theInternet from a telephone number included in the service.

The other service for responding to busy signals on the subscriber'sphone line is Internet Caller ID (ICID). Like-Intelligent CallForwarding, ICID enables the subscriber connected to the Internet via adial-up connection to contemporaneously receive caller identificationinformation concerning an incoming telephone call, without interruptingthe connection with the Internet. The caller information is provided ina pop-up dialog box on the subscriber's display, which includes but isnot limited to, a PC monitor. The information displayed to thesubscriber includes the name and number of the calling party, ifavailable. In addition, several disposition options are presented to thesubscriber which, upon selection, determine handling of the incomingcall.

In an embodiment, the disposition options available to the subscriberinclude accepting the call, forwarding the call to a voice mail system,redirecting the call to another telephone line (e.g., a cellulartelephone or a second telephone line), and playing an announcement tothe calling party. The announcement played to the calling party isselected by the subscriber and may be either a message informing thecalling party that the party they are trying to reach is busy and thatthe caller should call back later, or a message informing the callingparty that the party they are trying to reach is busy and will call themback later. Additionally, the subscriber has the option in all of theservice described herein of selecting the language in which the messagesplays, e.g., English or Spanish.

FIG. 1 illustrates an exemplary telecommunications network, forimplementing the Intelligent Call Forwarding aspects of the invention.As in the case of Flexible Call Forwarding, the subscriber is able toaccess the Intelligent Call Forwarding service by GUI via the Internet44 and by telephone via an IVR 45 through a common SMS 48 or through aSN/IP 57.

FIG. 25 illustrates an exemplary telecommunications network, includingIntelligent Call Forwarding and ICID, according to an alternativeembodiment of the invention. As in FIG. 1, the network of FIG. 25includes a calling party 20, an originating SSP 21, a terminating SSP24, a subscriber telephone 25, an SMS 48, an STP 22 and an SCP 23,examples of which have been previously described. The network alsoincludes a local number portability (LNP) database 55, a registrationserver (RS) 56, a heartbeat server 58 and an Internet Call Waiting (ICW)server 61. An associated data network of the invention includes a webclient 30 and a web server 54, connectable through the Internet 44. Theweb client 30 includes a PC 32 operating client software 34.

Generally, Intelligent Call Forwarding enables a subscriber to directincoming calls to alternative telephone numbers, both when thesubscriber telephone 25 is busy or not busy. In an embodiment,Intelligent Call Forwarding further includes several optional featuresthat the subscriber customizes. Among these features is a weeklyscheduler, which enables the subscriber to construct a weekly scheduleof multiple times for activating and deactivating Intelligent CallForwarding, as well as any features associated with Intelligent CallForwarding. For example, the scheduler indicates the times at which thepriority screening list and screening rejection list are ON/OFF, whichtimes do not necessarily correspond to the Intelligent Call Forwardingservice activation. The scheduler also designates the telephone numbersto which calls are to be forwarded corresponding to the various servicesand their various ON/OFF times. The scheduler is implemented through atod/dow table, which is stored at the SCP 23 and accessible by thesubscriber via the Internet 44.

The priority screening list is available for use at the subscriber'soption. The list contains the names and telephone numbers of prioritycallers, as designated by the subscriber. In an embodiment, if thepriority screening list has been activated, the SCP 23 will only processcalls originating from phone numbers included in the list. All othercalls are terminated at the subscriber telephone 25. The processingincludes either sending a message to the subscriber engaged in theInternet session, notifying the subscriber of the priority caller, orforwarding the priority callers to a priority, alternative telephonenumber, where they hear a voice announcement and are provided the optionto leave a message. The priority screening list is implemented through ascreening table, which is stored at the SCP 23 and accessible by thesubscriber via the Internet, as discussed in detail below.

Similarly, the rejection screening list is available for use at thesubscriber's option. This list contains the names and telephone numbersof callers from which the subscriber does not want to accept calls. If anumber is on the rejection screening list, and the list is active, thenthe call is terminated at the subscriber telephone 25, or it isterminated to a directory number specifically reserved to respond torejection screening list callers. In an embodiment, this alternativenumber provides a voice announcement and an option for the screenedcaller to leave a message. As in the case of the priority screening listfeature, the rejection screening list is implemented through a rejectionscreening table, which is stored at the SCP 23 and accessible for updateby the subscriber via the Internet 44 and the web server 54.

A subscriber's exemplary interaction with Intelligent Call Forwarding isdepicted in the call flow diagram of FIG. 26. As with the Flexible CallForwarding service, the subscriber is able to access the IntelligentCall Forwarding service via the Internet 44 or IVR 45, thereby greatlyincreasing flexibility and convenience. FIG. 26 depicts interaction withIntelligent Call Forwarding over the Internet, using a GUI, whichincludes the more complicated procedures for customizing the service,such as building the screening lists and weekly schedules. In theInternet interface, the subscriber accesses a unique URL associated withthe service provider to obtain the web screens of Intelligent CallForwarding, provided by the SMS 48. In an embodiment, an alternativemanner for accessing the Intelligent Call Forwarding data via theInternet is through the PCM service, described above.

As shown at step 2602 of FIG. 26, in order to access Intelligent CallForwarding, the subscriber must log-on to the web server 54 from the webclient 30 through the Internet 44. This step incorporates use of anycompatible web browser, discussed above. Once on the Internet 44, thesubscriber connects to the web server 54, which receives HTTP messagesfrom the subscriber web client 30 and provides HTML web pages inresponse to the subscriber's input. The web pages relate to thesubscriber's Intelligent Call Forwarding service.

Once connected to the web server 54, the user must provideauthentication information to access the corresponding account, throughthe web server 54 at step 2603. The SMS 48 performs the authentication.After receiving the account number and associated PIN from thesubscriber via the web server 54, the SMS 48 retrieves theauthentication data at step 2604 to confirm that the subscriber is anauthorized user.

After successful authentication, the SMS 48 retrieves at step 2605 thecurrent service data for Intelligent Call Forwarding, including currentscreening lists and weekly schedules. The SMS 48 transmits theinformation, along with a list of additional services and phone numbers,if any, corresponding to the subscriber, to the web server 54 at step2607. The web server 54 forwards the information to the web client 30 atstep 2608, via the Internet 44. The subscriber is presented with anumber of options for each telephone number in the account. For example,the subscriber can change the PIN, enter the forwarding directorynumber, toggle the Intelligent Call Forwarding service ON or OFF, andactivate or deactivate the priority screening list, the rejectionscreening list and the weekly schedule. In addition, the subscriber canbuild or edit the priority screening lists and weekly schedules. Oncethe changes have been entered by the subscriber and forwarded to the webserver 54 at step 2610, the web server 54 forwards the updated data tothe SMS 48 at step 2611. The SMS 48 stores the data and also updates theSCP 23 at step 2612 for implementation.

The web pages and associated prompts for input by the subscriber aresimilar to those shown in FIGS. 3-8 and 14 in reference to Flexible CallForwarding. In addition, FIG. 27 depicts an exemplary web page relatedto the rejection screening list (which may also be included in theFlexible Call Forwarding service). The web page is displayed on themonitor of the PC 32 at the web client 30 and includes the subscriber'stelephone number 350, which in this example is 847-555-1111. Thesubscriber may enter the telephone numbers of calls to be accepted andrejected by building the priority and rejection screening lists,respectively. Box 340 of FIG. 27 shows various directory numbers thatthe subscriber has identified for special treatment. It also containsthe ALL calling numbers options, which when selected by the subscriber,causes the Intelligent Call Forwarding service to process all incomingcalls to the subscriber's phone number 350 the same.

In this example, the calling numbers on the subscriber's priorityscreening list are indicated by a single asterisk and calling numbers onthe rejection screening list are indicted by double asterisks. In anembodiment of the invention, the calling numbers on the screening listscan be highlighted in different colors, for example, to aid thesubscriber in visually distinguishing priority calling number fromrejection calling numbers. The subscriber can then select theannouncement to be played for each screening list. In this example,announcement 342, ice., “I'll call you back later,” is played inresponse to calling numbers on the priority screening list andannouncement 344, i.e., “Call me back later,” is played in response tocalling numbers on the rejection screening list. The ON/OFF icons 346and 348 activate and deactivate the announcements 342 and 344,respectively. As in all embodiments of the invention, the activation anddeactivation may be accomplished by the GUI at web client 30 via theInternet or by DTMF touch tones or voice interaction through a telephonein conjunction with the IVR 45 via the PSTN.

Of course, numerous other options are available to the subscriber, suchas message playback language. The “S” and “E” indicators show that themessage will be played in Spanish and English, respectively. Otherlanguages are of course possible. Moreover, the subscriber may elect tobe notified at the web client 30 of calls from numbers on the priorityscreening list during the Internet session, while calls from numbers onthe rejection screening list are not notified to the subscriber.Instead, the rejected calls may hear a busy signal or may be forwardedto a number or prerecorded message reserved for rejected calls. Theexemplary web page of FIG. 14 also depicts a typical summary screen ofthe Intelligent Call Forwarding service.

The subscriber can alternatively interact with Intelligent CallForwarding using the IVR 45, exemplary steps of which are shown in FIG.28. Access through the IVR 45 is slightly limited in that the subscribercannot actually build or edit screening lists and weekly schedules, inan embodiment of the invention. However, the subscriber can access allother features of Intelligent Call Forwarding, including changing thePIN, toggling the service ON or OFF, and activating/deactivating thepriority screening list, the rejection screening list and the weeklyschedule.

Referring to FIG. 28, the subscriber calls a toll free number from anytelephone, which directly accesses the IVR 45 (or the SN/IP 57, ifapplicable), shown at step 2820. FIG. 28 depicts, as an example, thecall originating from the subscriber telephone 25. The IVR 45 receivesthe call and initiates a request for various authentication information,including the account and PIN number. These numbers coincide with theaccount and PIN numbers used to access the Flexible Call Forwardingservice via the Internet 44. The pre-programmed voice announcements forthis aspect of the invention reside in the IVR 45, and implementation ofthe voice announcements is well known. The authentication information isprovided using touch tones from the key pad of the subscriber telephone25 or, when speech recognition functionality is available, speaking tothe receiver of the subscriber telephone 25. The IVR 45 forwards theinformation to the SMS 48 at step 2822, which in turn verifies theauthorization at step 2824.

After verification, the system operates in much the same way asdescribed above with respect to a GUI and the Internet. Specifically,the SMS 48 retrieves account information, including the status ofIntelligent Call Forwarding service, at step 2826. At step 2828, the SMS48 provides the account information to the IVR 45, which verballyrecites a menu of options to the subscriber at step 2830 based on theinformation received from the SMS 48. For example, if the subscriber hadpreviously built a priority screening list, activation of this listwould be included among the options provided to the user over thetelephone. The subscriber listens to the options and inputs variouschoices at step 2832 by depressing the touch tone keys or speaking intothe telephone receiver. The choices may include, for example, turning onIntelligent Call Forwarding or selecting and activating a predefinedpriority screening list, rejection screening list or weekly schedule.The subscriber can also set the automatic-off function date and time.

The commands are forwarded from the IVR 45 to the SMS 48 at step 2834.The SMS 48 then updates the Intelligent Call Forwarding data containedin the SCP 23 at step 2836. Once the data is stored at the SCP 23, theIntelligent Call Forwarding service is set with respect to incomingcalls, in accordance with the customizing instructions from thesubscriber.

Once Intelligent Call Forwarding is customized and activated, it isimplemented in much the same way as ICID, as described below. In anembodiment of the invention, a TAT is assigned to the subscriber'sdirectory number or line, depending upon the type of switch. Once thetrigger has been assigned and activated, every terminating call to thesubscriber telephone 25 will cause the terminating SSP 24 to suspend thecall and send an AIN query message, via the existing SS7 network and theappropriate STP 22, to the subscriber's serving SCP 23 for instructions.The SCP 23 stores a call processing record for each subscriber andrequests information from the other network elements. In particular, theSCP 23 receives the TAT query from the SSP 24 and responds to the SSP 24with routing instructions for calls to subscribers.

In one embodiment, as depicted in FIG. 25, the RS 56 receivesregistration requests from the client software 34 when the subscriberlogs on to the Internet 44 and activates the service. The RS 56 storesinformation related to the subscriber's on-line Internet status. The RS56 is the first database accessed by the SCP 23 during the processing ofan Intelligent Call Forwarding or an ICID call. Based upon theinformation provided in a GetData query, the RS 56 returns a responsecontaining information associated with requested data elements to theSCP 23. For example, the RS 56 responds to the GetData query from theSCP 23 with information about the subscriber's Internet session status.Alternatively, the SCP 23 itself can determine the subscriber's on-lineInternet status.

A GetData query, sent via TCP/IP, includes an identifier, a service key,and a data element. The identifier indicates that the query is a GetDataquery, the service key contains an indication of the subscriber forwhich information is requested and, optionally, security information.The data element is the calling party's name being retrieved.

Additionally, the SCP 23 uses the name database 50 to retrieve callingparty name information associated with the calling party's telephonenumber for transmission to the subscriber. The interface between thename database 50 and the SCP 23 may be the Bellcore GetData queryprovided over the SS7 network. With this interface, the SCP 23 canreceive data from the name database 50. To support the GetData query,the SCP 23 accesses the name database 50 with the directory number ofthe calling party in order to obtain the calling party name. Detailedinformation about the GetData interface may be obtained in BellcoreGR-2838-CORE, Generic Requirements for GetData, the disclosure of whichis expressly incorporated by reference herein in its entirety.Alternatively, depending on the capabilities of the SCP 23, the callingparty name can be stored and retrieved at the SCP 23 without an externaldatabase.

If it is determined that the subscriber is on-line, the SCP 23 queriesthe LNP database 55, in a known manner, to determine if the callingparty number received in the TAT query has been ported. The telephonenumber received in a response from the LNP database 55 is used todetermine the calling party name, when it is available.

In this embodiment of the invention, the ICW server 61 is thecommunications interface between the SCP 23 and the client software 34at the web client 30. Specifically, the ICW server 61 receivesinformation related to incoming calls from the SCP 23 and passes thisinformation directly to the subscriber via TCP/IP utilizing the Internet44. Further, the ICW server 61 passes de-registration requests from theclient software 34 to a heartbeat server 58.

Additionally, the SCP 23 provides the ICW server 61 with the clientsoftware version number running on the subscriber's PC 32. Subsequently,the ICW server 61 determines if the subscriber has the latest version ofthe client software. If the ICW server 61 determines that the subscriberdoes not have the latest version of the client software, it notifies thesubscriber that they need to update their client software. Thisnotification is given when the ICW server 61 passes the calleridentification information to the subscriber.

During the course of an active Internet session with the IntelligentCall Forwarding or the ICID service turned on, the client software 34periodically transmits heartbeat messages via the Internet 44 utilizingTCP/IP to the heartbeat server 58, in one embodiment of the invention.In response, the heartbeat server 58 updates the RS 56 via TCP/IP withthe subscriber's on-line status, and notifies the RS 56 in situationswhere there is an interruption of heartbeat messages from the clientsoftware 34, indicating a possible undesired disconnection of theInternet session. Additionally, if the subscriber currently connected tothe Internet 44 elects to accept an incoming telephone call (as will bediscussed later), the client software 34 sends a de-registrationrequest, which is passed to the heartbeat server 58.

After the RS 56 receives a registration request from the client software34, the RS 56 sends a heartbeat setup message to the heartbeat server 58via TCP/IP to alert it to expect to receive heartbeat messages from theclient. As a result, the heartbeat server 58 begins to receivekeep-alive messages from the client after the registration is completed.If the client sends a keep-alive message that does not match theinformation in the heartbeat server 58 memory, then the heartbeat server58 sends a registration database query to the RS 56 via TCP/IP. If thequery results match the data received, the copy in memory is updated. Ifthe results of the query do not match, the heartbeat server 58 opens aTCP/IP session to send a message instructing the client to re-registerwith the RS 56.

The interface between the SCP 23 and the RS 56 and between the SCP 23and the ICW server 61 is, for example, the Bellcore GDI for TCP/IP. Thisinterface provides the capability to send/receive transactions to andfrom external systems over TCP/IP using Transaction CapabilitiesApplication Part (TCAP) messages. The SCP 23 can get data, send data, orinvoke an application (InvokeApp) from a database such as the RS 56 orICW server 61. More information may be obtained from Bellcore SR-3389,SCP Generic Data, Interface Specification for TCP/IP, Version 5.0, Issue2, January 1997, the disclosure of which is expressly incorporated byreference herein in its entirety.

The client software 34 is the subscriber interface for the IntelligentCall Forwarding and the ICID services. As discussed above, the clientsoftware 34 permits the subscriber to turn the services ON and OFF,choose preset options, and select call disposition options. An InvokeAppmessage is used to invoke the applications on the ICW server 61 and toreturn the subscriber's selected disposition options. Additionally, theclient software 34 provides a visual and audible alert to the subscriberof an incoming telephone call, sends Internet registration andde-registration requests, sends the subscriber's option selection to theICW server 61, and sends heartbeat messages to the heartbeat server 58.An InvokeApp message, sent via TCP/IP, may include standard AINparameters, well known in the art.

The exemplary telecommunications network depicted in FIG. 25 handlesincoming calls according to various options invoked by the subscriber,as depicted in exemplary call flow diagrams of FIGS. 29-36. FIG. 29 is acall flow diagram in which neither the Intelligent Call Forwarding northe ICID service has been turned on, or in which no active Internetsession exists, although in an embodiment, the Intelligent CallForwarding service can be active even when there is no active Internetsession. At step 2901, a telephone call is placed to the subscriber. ATAT in the terminating SSP 24 causes the call to be suspended at the SSP24. The trigger also causes the SSP 24 to transmit an AIN query messageincluding the calling party number (if available) and called partynumber via the SS7 network and the appropriate STP 22 to thesubscriber's serving SCP 23 at step 2902. At step 2903, the SCP 23 sendsa GetData query to the RS 56 with the called party's telephone number torequest the on-line status of the subscriber. At step 2904, the SCP 23sets a timer equal to a predetermined time, e.g., 2 seconds. In theevent that the RS 56 does not respond within the predetermined time(indicating a timeout condition) or responds with an error, the SCP 23sends an authorize termination response to the SSP 24. As a result, theSSP 24 terminates the suspended telephone call at the subscriber's lineand the call may encounter features programmed on the line, e.g., callwaiting.

If it is determined at the RS 56 that the subscriber is not currentlyon-line or has the services turned off, the RS 56 responds with a “0” atstep 2905. The SCP 23 then sends an authorize termination response tothe SSP 24 at step 2906, which terminates the call to the subscriber'stelephone line at step 2907. As a result, a connection is made betweenthe calling party and the subscriber. As the call attempts to terminate,it encounters any features programmed on the subscriber's telephoneline, e.g., call waiting.

FIG. 30 is a call flow diagram in which the subscriber elects to acceptthe incoming telephone call. The telephone call is placed by the callingparty 20 at steps 3001-3004, and handled as previously describedaccording to steps 2901-2904. If the subscriber is on-line and theIntelligent Call Forwarding or the ICID service is active, the RS 56responds with a “I” at step 3005. The RS 56 also responds with the IPaddress, port number and subscriber-key information for the subscriber'sInternet session.

At step 3026, a check is performed at the SCP 23 to confirm that thesubscriber has voice mail service. Also, the SCP 23 determines whetherthe presentation restriction value is restricted or unavailable. If thepresentation restriction value is restricted and the called partysubscribes to the Anonymous Call Rejection (ACR) service, an authorizetermination response is sent to the SSP 24 allowing the call to berejected. ACR prevents calls to subscribers when a calling party blockstheir number.

If the calling party number is delivered with the query and thepresentation restriction indicator for the incoming call is allowed, theSCP 23 launches a query to the local number portability database 55 todetermine whether the received calling party number is ported. Thetelephone number returned in the response is either equal to the callingparty number sent in the query if the telephone number is not ported orthe local routing number if the telephone number is ported. Thetelephone number from the response is used as the calling party numberand checked against entries in, a table to determine if the NPA-NXXbelongs to a participating local exchange carrier (LEC). A participatingLEC is one that provides data from its LIDB, or allows access to itsLIDB.

If the calling party number is found to be a participating LEC, aGetData query is launched to the name database 50 at step 3027 toretrieve the calling party's name. If the calling party number was notdelivered with the query, or there is no participating LEC, or thepresentation restriction indicator for the incoming call is anonymous orunavailable, the SCP 23 will not launch a GetData query to the namedatabase 50 to retrieve the calling party's name. In this event, thecalling party name is null in the InvokeApp query to the ICW server 61.If available, the calling party's name is sent to the SCP 23 from thename database 50 at step 3028.

At step 3029, the SCP 23 instructs the SSP 24 to play a “please hold”announcement to the calling party to request the calling party to holdthe line (step 3030). At step 3031, the SCP 23 sends an InvokeApprequest to the ICW server 61. The request contains the called partynumber, the calling party number (if available and not presentationrestricted), the calling party name (if available and not presentationrestricted), an associated IP address, the port number, the clientsoftware version, and an indicator as to whether or not the subscriberhas voice mail service.

At step 3032, the SCP 23 sets a timer equal to a predetermined time,e.g., 25 seconds. In the event that the ICW server 61 does not respondwithin the predetermined time (indicating a timeout condition) orresponds with an error, the SCP 23 instructs the SSP 24 to stop playingthe “please hold” announcement to the caller. Then, the SSP 24 beginsplaying an announcement to the caller or forwarding the call inaccordance with the Intelligent Call Forwarding instructions. When voicemail is available, the message informs the caller that the call is beingforwarded to a voice mail service. Lastly, the SCP 23 sends an authorizetermination response to the SSP 24. If the subscriber does not havevoice mail service, an error is reported and the SCP 23 sends anauthorize termination response to the SSP 23. As a result, the SSP 23terminates the suspended telephone call to the subscriber's telephoneline and the call encounters any other, features programmed on the line.

If no timeout occurs, at step 3033 the ICW server 61 sends a message viathe Internet 44 to the subscriber, which appears on the subscriber'sdisplay at web client 30, informing the subscriber of the incoming calland presenting the subscriber with disposition options for the call. Themessage displayed may be a pop-up dialog box.

At step 3034, the subscriber elects to accept the telephone call, and asa result, the client software 34 responds to the ICW server 61 withoption 1 and will send a de-registration message to the RS 56, and beginto terminate the subscriber's Internet session. The ICW server 61 passesthe subscriber's option 1 selection to the SCP 23 at step 3035. At step3036, the SCP 23 instructs the SSP 24 to stop playing the “please hold”announcement to the caller. At step 3037, the “please hold” announcementis terminated by the SSP 24 and at step 3038, the SSP 24 sends aresource clear message to the SCP 23 confirming that the message is nolonger playing. At step 3039, the SCP 23 instructs the SSP 24 to beginplaying a “will take your call” announcement to the caller (step 3040).At step 3041, the SSP 24 sends a resource clear message to the SCP 23.At the conclusion of the “will take your call” announcement, the SCP 23sends an authorize termination response to the SSP 24 which terminatesthe suspended call to the subscriber's telephone line (steps 3042-3043).That is, the calling party 20 is connected to the subscriber telephone25.

FIG. 31 is a call flow diagram in which the subscriber is on-line andelects to forward an incoming telephone call to voice mail service. Thetelephone call placed to the subscriber is processed at steps 3101-3133in the same manner indicated by steps 3001-3033, discussed above. Inresponse to the query from the ICW server 61 (at step 3133), thesubscriber elects option 2 at step 3174 to send the incoming telephonecall to voice mail service. As a result, the client software 34 respondsto the ICW server 61 and will not terminate the subscriber's Internetsession.

The ICW server 61 passes the subscriber's option 2 selection to the SCP23 at step 3175. At step 3176, the SCP 23 instructs the SSP 24 to stopplaying the “please hold” announcement to the caller. At step 3177, the“please hold” announcement is terminated by the SSP 24 and at step 3178,the SSP 24 sends a resource clear message to the SCP 23 confirming thatthe message is no longer-playing. At step 3179, the SCP 23 instructs theSSP 24 to begin playing a “forwarding to voice mail service”announcement to the caller (step 3180). At step 3181, the SSP 24 sends aresource clear message to the SCP 23.

At the conclusion of the “forwarding to voice mail service”announcement, the SCP 23 sends an authorize termination response to theSSP 24 which terminates the suspended call to the subscriber's busytelephone line (steps 3182-3183). As the call attempts to terminate atthe subscriber's line, the call encounters programming associated withvoice mail service and the call is forwarded accordingly. Ultimately,the calling party is connected with the subscriber's voice mail box andhas the option of leaving a message.

FIG. 32 is a call flow diagram in which the subscriber is on-line andelects to send an incoming telephone call to an announcement. Thetelephone call placed to the subscriber is processed at steps 3201-3233in the same manner indicated by steps 3001-3033, discussed above. Inresponse to the query from the ICW server 61, the subscriber elects tosend the telephone call to an announcement at step 3234. As a result,the client software 34 responds to the ICW server 61 with theannouncement selection number, which includes two choices. The firstmessage that may be played advises the caller that the subscriber isbusy and that the caller should call back later. The second optionadvises the caller that the subscriber is busy and that the subscriberwill return the call to the caller at a later time.

The ICW server 61 passes the subscriber's selection to the SCP 23 atstep 3235. At step 3236, the SCP 23 instructs the SSP 24 to stop playingthe “please hold” announcement to the caller. At step 3237, the “pleasehold” announcement is terminated by the SSP 24 and at step 3238, the SSP24 sends a resource clear message to the SCP 23 confirming that themessage is no longer playing. At step 3239, the SCP 23 instructs the SSP24 to begin playing the selected announcement (step 3240). At step 3241,the SSP 24 sends a resource clear message to the SCP 23. At theconclusion of the selected announcement, the SCP 23 instructs the SSP 24to disconnect the call at step 3242.

FIG. 33 is a call flow diagram in which the subscriber is on-line andelects to forward an incoming telephone call to another telephone line.The telephone call placed to the subscriber is processed at steps3301-3333 in the same manner indicated by steps 3001-3033, discussedabove. In response to the query from the ICW server 61, the subscriberelects option 3 to redirect the call to another telephone number at step3334. As a result, the client software 34 responds to the ICW server 61with option 3 and a ten digit “forward to” telephone number as selectedby the subscriber. The ICW server 61 passes the subscriber's option 3selection and the selected ten digit “forward to” telephone number tothe SCP 23 at step 3335.

At step 3336, the SCP 23 instructs the SSP 24 to stop playing the“please hold” announcement to the caller. At step 3337, the “pleasehold” announcement is terminated by the SSP 24 and at step 3338 the SSP24 sends a resource clear message to the SCP 23 confirming that themessage is no longer playing. At step 3339, the SCP 23 instructs the SSP24 to begin playing a “forwarding to another number” announcement to thecaller (step 3340). At step 3341, the SSP 24 sends a resource clearmessage to the SCP 23. At the conclusion of the “forwarding to anothernumber” announcement, the SCP 23 sends a Forward Call response to theSSP 24 which initiates the process of forwarding the call to thespecified telephone number (step 3342). Ultimately, the calling party isconnected to the forwarded number through the SSP 24.

In FIGS. 31-33, if the subscriber does not respond to the query from ICWserver 61, or if the RS 56 indicates that the subscriber is no longeron-line, the SCP 23 processes the incoming call in accordance with thesubscriber's previously built and stored call forwarding data. In oneembodiment of the invention, the subscriber can specifically choose toinstruct the SCP 23 to process the call in accordance with previouslybuilt and stored call forwarding data, in response to the query from ICWserver 61. Processing calls in accordance with previously built andstored call forwarding data is discussed in detail in regard to FIGS.37-39, below.

FIG. 34 is a call flow diagram in which the caller abandons a telephonecall after a response from the ICW server 61. The telephone call placedto the subscriber is processed at steps 3401-3433 in the same mannerindicated by steps 3001-3033, discussed above. In response to the queryfrom the ICW server 61, the subscriber elects a call disposition optiondescribed herein in order to control the incoming telephone call. As aresult, the client software 34 responds to the ICW server 61 with theoption at step 3434. The ICW server 61 passes the subscriber's optionselection to the SCP 23 at step 3435.

At step 3436, the caller abandons the telephone call by hanging up, inwhich case the SSP 24 stops playing the “please hold” announcement tothe caller at step 3437 and at step 3438, the SSP 24 sends resourceclear message to the SCP 23 due the abandonment of the telephone call bythe caller. At step 3439, the SCP 23 terminates call processing record(CPR) processing.

FIG. 35 is a call flow diagram in which the caller abandons thetelephone call before a response from the ICW server 61 is received. Thetelephone call placed to the subscriber is processed at steps 3501-3533in the same manner indicated by steps 3001-3033, discussed above. Inresponse to the query from the ICW server 61, the subscriber elects acall disposition option to control the call at step 3534. As a result,the client software 34 responds to the ICW server 61 with the selectedoption. At step 3535, the caller abandons the telephone call by hangingup, in which case the SSP 24 stops playing the “please hold”announcement to the caller at step 3536 and at step 3537, the SSP 20sends a resource clear message to the SCP 23 due the abandonment of thetelephone call by the caller. At step 3538, the SCP 23 terminates CPRprocessing, ignoring any responses from the ICW server 61 related tothis disconnected call at step 3539.

In an alternative embodiment of the invention, as depicted in FIG. 1, aservice node (e.g., the SN/IP 57) essentially replaces the combinationof the ICW server 61, the RS 56 and the heartbeat server 58. Inparticular, whenever the subscriber connects to the Internet 44, theSN/IP 57 is automatically notified of the on-line status. The SN/IP 57contemporaneously forwards the subscriber's on-line status to the SCP23, regardless of whether a call to the subscriber's number is beingprocessed. The SCP 23 stores the on-line status data in conjunction withthe other data related to the subscriber. The data is stored as a YESindication in the subscriber Internet provider (SIP) field. Likewise,when the subscriber exits the Internet session, the SN/IP 57 is notifiedthat the subscriber is no longer on-line. The SN/IP 57 likewisetransmits this information to the SCP 23, which changes the SIPindication to NO. Therefore, when a telephone call to the subscribertelephone 25 is processed according to the embodiment depicted in FIG.1, the SCP 23 determines the on-line status without having to query anexternal server.

FIG. 36 is a call flow diagram depicting the process by which thesubscriber elects to accept the incoming telephone call, according tothe alternative embodiment of FIG. 1. At step 3601, a telephone call isplaced by the calling party 20 to the subscriber telephone 25. A TAT inthe terminating SSP 24 causes the call to be suspended at the SSP 24.The trigger also causes the SSP 24 to transmit an AIN query messageincluding the calling party number (if available) and called partynumber via the SS7 network and the appropriate STP 22 to thesubscriber's serving SCP 23 at step 3602. At step 3603, a check isperformed at the SCP 23 to confirm that the subscriber has voice mailservice. Also, the SCP 23 determines whether the presentationrestriction value is restricted or unavailable. If the presentationrestriction value is restricted and the called party subscribes to theACR service, an authorize termination response is sent to the SSP 24allowing the call to be rejected. ACR prevents calls to subscribers whena calling party blocks their number.

If the calling party number is delivered with the query and thepresentation restriction indicator for the incoming call is allowed, theSCP 23 launches a query to an LNP database (not pictured), for example,to determine whether the received calling party number is ported. Thetelephone number returned in the response is either equal to the callingparty number sent in the query if the telephone number is not ported orthe local routing number if the telephone number is ported. Thetelephone number from the response is used as the calling party numberand checked against entries in a table to determine if the NPA-NXXbelongs to a participating LEC.

If the calling party number is found to be a participating LEC, a queryis launched to the name database 50 at step 3604 to retrieve the callingparty's name. The name database 50 can be, for example, an external LIDBor a local real time database servicing the SCP 23. If the calling partynumber was not delivered with the query, or there is no participatingLEC, or the presentation restriction indicator for the incoming call isanonymous or unavailable, the SCP 23 will not launch the query to thename database 50 and the SSP 24 terminates the suspended telephone callat the subscriber's line. If available, the calling party's name is sentto the SCP 23 from the name database 50 at step 3605.

At step 3606, the SCP 23 determines the on-line status of thesubscriber. As discussed above, this information is previously providedby the SN/IP 57 to the SCP 23. Therefore, the SCP 23 simply retrievesthe on-line status data from it subscriber database. If the subscriberis not currently on-line, the SCP 23 sends an authorize terminationresponse to the SSP 24, which terminates the call to the subscriber'stelephone line. However, if the subscriber is on-line, as shown in FIG.36, the SCP 23 instructs the SSP 24 to play a “please hold” announcementto the calling party at step 3607 to request the calling party to holdthe line (step 3608).

At step 3609, the SCP 23 sends an SIP invite to the SN/IP 57. The SIPinvite contains the called party number, the calling party number (ifavailable and not presentation restricted), the calling party name (ifavailable and not presentation restricted), the IP address, the portnumber, the client software version, an indicator as to whether or notthe subscriber has voice mail service and a session key. At step 3610,the SCP 23 sets a timer equal to a predetermined time, e.g., 25 seconds.In the event that the SN/IP 57 does not respond within the predeterminedtime (indicating a timeout condition) or responds with an error, the SCP23 instructs the SSP 24 to stop playing the “please hold” announcementto the caller. Then, the SSP 24 begins playing an announcement to thecaller or forwarding the call in accordance with the Intelligent CallForwarding instructions. When voice mail is available, the messageinforms the caller that the call is being forwarded to a voice mailservice. Lastly, the SCP 23 sends an authorize termination response tothe SSP 24. If the subscriber does not have voice mail service, an erroris reported and the SCP 23 sends an authorize termination response tothe SSP 23. As a result, the SSP 23 terminates the suspended telephonecall to the subscriber's telephone line and the call encounters anyother features programmed on the line.

If no timeout occurs, at step 3611, the SN/IP 57 sends a message via theInternet 44 to the subscriber, which appears on the subscriber's displayat the web client 30, informing the subscriber of the incoming call andpresenting the subscriber with disposition options for the call. Themessage displayed may be a pop-up dialog box.

At step 3612, the subscriber elects to accept the telephone call, and asa result, the client software 34 responds to the SN/IP 57 with an OKmessage encrypted with the session key. In response, the SN/IP 57initiates termination of the subscriber's Internet session. The SN/IP 57also passes the subscriber's selection to accept the incoming call tothe SCP 23 at step 3613. At step 3614, the SCP 23 instructs the SSP 24to stop playing the “please hold” announcement to the caller. At step3615, the “please hold” announcement is terminated by the SSP 24 and atstep 3616 the SSP 24 sends a resource clear message to the SCP 23confirming that the message is no longer playing.

At step 3617, the SCP 23 instructs the SSP 24 to begin playing a “willtake your call” announcement to the caller (step 3618). At step 3619,the SSP 24 sends a resource clear message to the SCP 23. At theconclusion of the “will take your call” announcement, the SCP 23 sendsan authorize termination response to the SSP 24 which terminates thesuspended call to the subscriber's telephone line (steps 3620-3621).That is, the calling party 20 is connected to the subscriber telephone25.

In comparison to FIG. 30, which is the call flow when the subscriberelects to accept an incoming call while on-line, according to theembodiment of FIG. 25, FIG. 36 differs only through step 3610. Afterstep 3610, the embodiments are substantially the same. Therefore,substitution of steps 3601 through 3610 for the first 12 steps of thecall flows in FIGS. 29-35 produces a corresponding call flow diagramdepicting the alternative embodiment of FIG. 1. These alternative callflows will therefore not be repeated herein to avoid redundancy.

FIGS. 37-39 show an exemplary flowchart diagram of the SCP servicelogic, according to an aspect of the present invention, wheneverIntelligent Call Forwarding has been activated. At step s3702 of FIG.37, a query, including the called party's telephone number and thecalling party's telephone number, is received by the SCP 23 from theterminating switch SSP 24. At step s3704, a table is used to derive thelocal access and transport area (LATA) based upon the NPA-NXX of thecalled party number. In the embodiment depicted in FIG. 25, the LATA isused to determine the corresponding registration server 56 and ICWserver 61 to query for the GetData and InvokeApp requests. The systemselects from among multiple registration servers and ICW serversassigned to predetermined areas.

Subsequently, at step s3706 the SCP 23 launches a query to theappropriate server to obtain the subscriber's on-line status and sets atimer equal to a predetermined time, e.g., 2 seconds. If the query isunsuccessful, an error is reported and the SCP 23 instructs the SSP 24to terminate the suspended call to the subscriber's line. If however,the query is successful, the subscriber's on-line status is determinedat step s3706.

In an alternative embodiment, which incorporates the SN/IP 57 as shownin FIG. 1, there is no need for the SCP 23 to send a query to a serverto determine the subscriber's on-line status. Instead, the SCP 23already has that data stored and available. Every time the subscriberinitiates an Internet session, a service node (e.g., the SN/IP 57) isnotified. The service node, in turn, systematically notifies the SCP 23that the subscriber is on-line and the SCP 23 stores the on-line statusinformation. Therefore, when the SCP 23 receives a TAT query from SSP 24regarding the subscriber's telephone number, the SCP 23 already has anon-line indication without having to query an external server. In otherwords, pursuant to the embodiment of FIG. 1, step s3704 is by-passed andstep s3706 is executed using data already stored at the SCP 23.

If at step s3706, it is determined that the subscriber is not on-line,the SCP 23 instructs the SSP 24 according to any services associatedwith the called number. If the subscriber has Intelligent CallForwarding, the SCP 23 proceeds to step s3740 of FIG. 39 to implementcall forwarding options, as discussed below.

If the subscriber is on-line, a determination is made to ascertainwhether the presentation restriction value is restricted or unavailable,at step s3710. If the presentation restriction indicator for theincoming call is “allowed,” the SCP 23 launches a query to the LNPdatabase 55 to determine whether the received calling party number is aported telephone number at step s3712. If the query is successful, thetelephone number returned in the response is either equal to the callingparty number sent in the query if the telephone number is not ported, orthe local routing number if the telephone number is ported. Thetelephone number returned in the response is checked against entries ina table to determine if the NPA-NXX belongs to a participating LEC, inwhich case a query is launched to the name database 50 to retrieve thecalling party's name at step s3712.

If either query is not successful, an error is reported, the callingparty name is set to null, and a determination is made as to whether thesubscriber has voice mail service. Next, when the calling-party name andnumber have been retrieved from the name database 50 at step s3714, a“please hold” announcement is played to the caller. If the subscriberhas voice mail service, the caller is advised that the called party ison another call and that the caller should wait, and that the wait maytake fifteen seconds. If the subscriber does not have voice mailservice, the caller is advised that the called party is on another call,and that if the caller's call is not taken, the caller may hear a busysignal or be transferred to another number.

If the calling party name is not in the name database 50, an error isreported, the calling party name is set to null, and a determination ismade as to whether the subscriber has voice mail service. Next, at steps3714 a “please hold” announcement is played to the caller. Anappropriate message is played, depending on whether the subscriber hasvoice mail service.

If a call is received with a presentation restriction indicator ofrestricted (i.e., anonymous) and the subscriber has the ACR featureactivated, an authorization response is sent to the SSP 24 and thesuspended call attempts to terminate at the subscriber's line. If no ACRfeature is active, or if the presentation restriction value isunavailable, the calling party name is set to null and the calling partynumber is set to anonymous or unavailable. Next, at step s3714 a “pleasehold” announcement is played to the caller. An appropriate message isplayed, depending on whether the subscriber has voice mail service.

At step s3716, the SCP 23 contacts the appropriate server (e.g., via anInvokeApp request to the ICW server 61 of FIG. 25) or service node(e.g., via an SIP invite to the SN/IP 57 of FIG. 1) with a request thatincludes the called party number, calling party number (if available andnot presentation restricted), the calling party name (if available andnot presentation restricted), IP address, port number, client softwareversion number, and an indicator as to whether the subscriber has voicemail service. If there is no response within a predetermined timeperiod, e.g., 25 seconds (indicating a timeout condition), an error isreported and an authorization response will be sent to the SSP 24 andthe suspended call will attempt to terminate at the subscriber's line.If, however, there is a response within the predetermined time period, adetermination is made as to whether the caller has abandoned the call atstep s3718. If the call was abandoned, the connection is disconnected atstep s3720. If the caller is still on the line, the server or theservice node formats an Internet message to the client software 34 onthe subscriber's PC 32, which causes a pop-up box dialog box to bedisplayed on the subscriber's display, informing the subscriber of theincoming call and presenting the subscriber with several calldisposition options. Subsequently, the logic proceeds to step s3722 ofFIG. 38.

Referring to FIG. 38, which continues the flow of FIG. 37, a check ismade at step s3722 to determine whether the subscriber selected a calldisposition option and the please hold announcement is terminated. If nocall disposition option is made within a predetermined time period, theSCP 23 instructs the SSP 24 to begin playing a “call me back later”announcement at step s3730, after which the SSP 24 disposes of the callat step s3732, ending the logic flow at s3720.

If the subscriber selects a call disposition option (step s3722—YES),the SCP 23 first determines whether the subscriber has expresslyrejected the call at step s3723. If the call is rejected (steps3723—YES), the SCP 23 instructs the SSP 24 to begin playing a “call meback later” announcement at step s373), after which the SSP 24 disposesof the call at step s3732, ending the logic flow at s3720. If the callis not rejected (step s3723—NO), the logic flow proceeds to step s3724.

If the subscriber elects to accept the incoming call (step s3724—YES),the SCP 23 instructs the SSP 24 to begin playing a “will take your call”announcement at step s3730, after which the SCP 23 sends an authorizetermination response to the SSP 24 which terminates the suspended callto the subscriber's telephone line at steps s3732 to s3720. Otherwise,the logic flow proceeds to step s3726 (step s3724—NO).

If the subscriber elects to forward the incoming call to voice mailservice (step s3726—YES), the SCP 23 instructs the SSP 24 to beginplaying an announcement to the caller that the call is being forwardedto a voice mail service at step s3730, after which the SCP 23 sends anauthorize termination response to the SSP 24 at step s3732. The call isthen connected to the subscriber's voice mail service. If the subscriberdoes not forward the call to voice mail (step s3726—NO), the logic flowproceeds to step s3728.

If the subscriber elects to forward the incoming call to anothertelephone line (step s3728—YES), the SCP 23 instructs the SSP 24 tobegin playing a “forwarding to another number” announcement at steps3730, after which the SCP 23 sends a Forward Call response to the SSP24 at step s3732. The call is then forwarded to the desired number. Ifthe subscriber elects not to send the incoming call to another telephoneline (step s3728—NO), the subscriber may select an announcement to beplayed to the caller at step s3730. The SCP 23 accordingly instructs theSSP 24 to begin playing the announcement selected by the subscriber atstep s3730. One optional announcement advises the caller that thesubscriber is busy and that the caller should call back later. Anotheroption advises the caller that the subscriber is busy and that thesubscriber will call the caller back later. After the selectedannouncement is played to the caller, the logic ends at step s3720.

FIG. 39 continues the flow from FIG. 37 whenever it is determined thatan Intelligent Call Forwarding subscriber is not on-line. At step s3740,the SCP 23 determines whether call forwarding for all calls is active.If so, the incoming call is routed to the forwarding number at steps3742. If not, it is determined whether the scheduler is active at stepat s3744. If the scheduler is ON, and the tod/dow is found at steps3746, the SCP 23 processes calls according to the tod/dow table, ifpopulated, at step s3747. Processing the call according to the tod/dowtable may include terminating the call to the subscriber telephonenumber if the time of day and day of the week correspond to adeactivation period.

If at step s3744, it is determined that the scheduler is OFF, or if atstep s3746, it is determined that the scheduler is ON but the tod/dowtable is not populated, the SCP 23 determines whether the subscriber hasidentified special routing instructions based on the calling partynumber. First, the SCP 23 determines whether the priority screening listis ON at step s3748 and, if so, whether the calling party number is onthat list at step s3750. Whenever the calling party number is on thepriority screening list (step s3750—YES), the SCP 23 instructs the SSP24 to route the incoming call to a pre-designated priority telephonenumber at step s3752, ending the call, at s3720.

When the calling party number is not on the priority screening list(step s3750—NO), or when the priority screening list is OFF (steps3748—NO), the SCP 23 goes on to determine whether the rejectionscreening list is ON at step s3754. Whenever the rejection screeninglist is ON, the SCP 23 determines whether the calling party number is onthat list at step s3756. Whenever the calling party number is on therejection screening list (step s3756—YES), the SCP 23 instructs the SSP24 to play an announcement at step s3758 rejecting the caller. In analternative embodiment of the invention, the SCP 23 instructs the SSP 24to terminate the incoming call to a directory number, without anannouncement, predesignated by the subscriber to receive rejectedtelephone calls, such as an voice message center, where the call isterminated. Whenever the rejection screening list is OFF (steps3754—NO), or the rejection screening list is ON, but the calling partynumber is not on the list (step s3756—NO), the SCP 23 instructs the SSP24 to route the call to the called number at step s3755, ending theprocess at s3720.

Although the invention has been described with reference to severalexemplary embodiments, it is understood that the words that have beenused are words of description and illustration, rather than words oflimitation. Changes may be made within the purview of the appendedclaims, as presently stated and as amended, without departing from thescope and spirit of the invention in its aspects. Although the inventionhas been described with reference to particular means, materials andembodiments, the invention is not intended to be limited to theparticulars disclosed; rather, the invention extends to all functionallyequivalent structures, methods, and uses such as are within the scope ofthe appended claims.

In accordance with various embodiments of the present invention, themethods described herein are intended for operation as software programsrunning on a computer processor. Dedicated hardware implementationsincluding, but not limited to, application specific integrated circuits,programmable logic arrays and other hardware devices can likewise beconstructed to implement the methods described herein. Furthermore,alternative software implementations including, but not limited to,distributed processing or component/object distributed processing,parallel processing, or virtual machine processing can also beconstructed to implement the methods described herein.

It should also be noted that the software implementations of the presentinvention as described herein are optionally stored on a tangiblestorage medium, such as: a magnetic medium such as a disk or tape; amagneto-optical or optical medium such as a disk; or a solid statemedium such as a memory card or other package that houses one or moreread-only (non-volatile) memories, random access memories, or otherre-writable (volatile) memories. A digital file attachment to e-mail orother self-contained information archive or set of archives isconsidered a distribution medium equivalent to a tangible storagemedium. Accordingly, the invention is considered to include a tangiblestorage medium or distribution medium, as listed herein and includingart-recognized equivalents and successor media, in which the softwareimplementations herein are stored.

Although the present specification describes components and functionsimplemented in the embodiments with reference to particular standardsand protocols, the invention is not limited to such standards andprotocols. Each of the standards for Internet and other packet switchednetwork transmission (e.g., TCP/IP, UDP/IP, HTML, HTTP) representexamples of the state of the art. Such standards are periodicallysuperseded by faster or more efficient equivalents having essentiallythe same functions. Accordingly, replacement standards and protocolshaving the same functions are considered equivalents.

1. A computer readable medium storing a program, executable by acomputer to interface with a call service associated with callsinvolving at least one directory number of a user, the call serviceutilizing call service data comprising the at least one directorynumber, the method comprising: a transmitting code segment configured totransmit the call service data from a call service server through apacket switching network; a displaying code segment configured to causea plurality of activation fields to be displayed to the user, theplurality of activation fields comprising a first activation indicatorcorresponding to the call service and a second activation indicatorcorresponding to a first feature of the call service; a receiving codesegment configured to receive selection data entered by the user inresponse to the display, the selection data indicating one of an ONcondition and an OFF condition corresponding to each of the plurality ofactivation fields; and an activating code segment configured to activatethe call service in response to an ON condition corresponding to thefirst activation indicator to implement associated call servicefunctionality.
 2. The computer readable medium of claim 1, wherein theactivating code segment is further configured to activate the firstfeature of the call service in response to an ON condition correspondingto the second activation indicator, cause the associated call servicefunctionality to be implemented subject to the first feature of the callservice.
 3. The computer readable medium of claim 2, wherein the firstfeature of the call service comprises a screening list comprising atleast one screened directory number.
 4. The computer readable medium ofclaim 3, wherein calls to or from the at least one screened directorynumber are processed differently from calls to or from directory numbersnot on the screening list when the first feature is activated.
 5. Thecomputer readable medium of claim 2, wherein the first feature of thecall service comprises a schedule.
 6. The computer readable medium ofclaim 5, wherein the schedule comprises at least one activation period.7. The computer readable medium of claim 6, wherein activating theschedule causes the call service functionality to be implemented onlyduring the at least one activation period.
 8. A web server forimplementing a call service, the call service including call servicedata corresponding to a directory number of the user, the web servercomprising: a first interface for communicating with a call processorthat processes telephone calls in a telecommunications network, the callprocessor being configured to communicate with a database comprising thecall service data; and a second interface for communicating with acomputer of a user via a packet switching network, the user computercomprising a display that displays a plurality of activation fields, theactivation fields comprising a first activation indicator correspondingto the call service and a second activation indicator corresponding to afirst feature of the call service, each of the activation indicatorsenabling selection of one of an ON and an OFF condition.
 9. The webserver of claim 8, wherein the first feature of the call servicecomprises a screening list, including at least one screened number. 10.The web server of claim 9, wherein the screening list is activated inresponse to an ON condition corresponding to the second activationindicator.
 11. The web server of claim 10, wherein calls to or from theat least one screened number are processed differently from calls to orfrom directory numbers not on the screening list.
 12. The web server ofclaim 8, wherein the first feature of the call service comprises aschedule having at least one activation period.
 13. The web server ofclaim 12, wherein the schedule is activated in response to an ONcondition corresponding to the second activation indicator.
 14. The webserver of claim 13, wherein activating the schedule enables the callservice functionality only during the at least one activation period.15. A computer readable medium storing a program, executable by acomputer to interface with a call forwarding service that forwards callsplaced to a number of a user to a forward-to number, and that includescall forwarding service data, the computer readable medium comprising: adisplaying code segment configured to cause a forward-to number fieldand a plurality of activation fields to be displayed, a, firstactivation field comprising a first activation indicator correspondingto the call forwarding service and a second activation field comprisinga second activation indicator corresponding to at least one feature ofthe call forwarding service; a receiving code segment configured toreceive forward-to number data and selection data through the packetswitching network from the user, the forward-to number data indicatingthe forward-to number entered in the forward-to number field, and theselection data indicating one of an ON condition and an OFF conditioncorresponding to the at least one activation field; and an activatingcode segment configured to activate the call forwarding service inresponse to an ON condition corresponding to the first activationindicator in order to implement call forwarding functionality, subjectto the at least one feature of the call forwarding service, to forwardcalls to the forward-to number.
 16. The computer readable medium ofclaim 15, wherein the at least one feature of the call forwardingservice comprises a screening list, indicating at least one directorynumber.
 17. The computer readable medium of claim 16, wherein activationof the screening list, in response to an ON condition corresponding tothe second activation indicator, causes only calls from the at least onedirectory number to be forwarded to the forward-to number.
 18. Thecomputer readable medium of claim 15, wherein the at least one featureof the call forwarding service comprises a schedule, indicating at leastone activation period.
 19. The computer readable medium of claim 18,wherein the schedule comprises a weekly schedule.
 20. The computerreadable medium of claim 19, wherein activation of the weekly schedule,in response to an ON condition corresponding to the second activationindicator, causes the call forwarding functionality to be implementedonly during the at least one activation period.